Jacky's blog
首页
  • 学习笔记

    • web
    • android
    • iOS
    • vue
  • 分类
  • 标签
  • 归档
收藏
  • tool
  • algo
  • python
  • java
  • server
  • growth
  • frida
  • blog
  • SP
  • more
GitHub (opens new window)

Jack Yang

编程; 随笔
首页
  • 学习笔记

    • web
    • android
    • iOS
    • vue
  • 分类
  • 标签
  • 归档
收藏
  • tool
  • algo
  • python
  • java
  • server
  • growth
  • frida
  • blog
  • SP
  • more
GitHub (opens new window)
  • web
  • web concept
  • javascript

  • css

  • vue

  • react

  • nextjs

  • module

  • web faq
    • node.js 是多线程的吗?
  • web3

  • more

  • 《web》
Jacky
2024-05-07
目录

web faq

# node.js 是多线程的吗?

在 Node.js 中, JavaScript 代码是运行在单线程的事件循环(event loop)中的, 因此在这个意义上来说, Node.js 是单线程的。这意味着 JavaScript 代码在任何给定的时刻只能在一个线程上执行, 并且事件循环保证了代码的执行顺序和不会出现并发问题

然而, Node.js 在执行异步操作时(例如文件 I/O、网络请求、定时器等), 会利用底层操作系统提供的多线程机制来实现并发执行。这意味着虽然 JavaScript 代码是单线程执行的, 但 Node.js 底层的操作系统线程池会处理并发执行异步操作, 以提高性能和吞吐量

因此, 尽管 Node.js 的 JavaScript 代码是单线程的, 但它可以利用多线程来执行异步操作, 从而实现了非阻塞的 I/O 操作和高效的并发处理

#FQA
上次更新: 2024/12/01, 17:07:39
Tailwind CSS 完整学习指南
web3

← Tailwind CSS 完整学习指南 web3→

最近更新
01
npx 使用指南
10-12
02
cursor
09-28
03
inspect
07-20
更多文章>
Theme by Vdoing | Copyright © 2019-2025 Jacky | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式