Node.js是单线程的还是不是?
我已经读过Node.js处理模型,该节点只是使用事件循环接受请求,并将工作交给正在执行asynchronous操作的c ++工作线程。
我还读到:
- 节点不是单线程的。
- 在节点中,除了代码之外,所有的东西都是平行的
- 在节点中,如果你使用settimeout函数,那么在这个时候什么都不会起作用。
我已经做了一些研究,但不能得出结论。 我的问题是:
- 如果节点使用c ++工作线程,你怎么能说它是单线程?
- 除了我们的代码,一切都是平行的?
- settimeout事情是否真实?
Node.js裸体在单个线程上的单个进程上运行。
但是有一个webworker扩展允许运行多个线程:
https://www.npmjs.org/package/webworker-threads
为了产生多个进程,请检查群集模块
(在这里看到一个很好的更新教程: http : //blog.carbonfive.com/2014/02/28/taking-advantage-of-multi-processor-environments-in-node-js/ )
还有关于该主题的最新更新的答案:
什么是Node.js?
- 访问客户端JavaScript中的Express.js局部variables
- 关于Node.js Promise然后返回?
- JavaScript – 使用JasminetestingNodeJS readline.createInterface的实现
- node.js模块和函数中的“this”的含义
- 为什么javascript数组索引号非常高导致崩溃/减速/麻烦?
- Firebase + Node.js:错误:未findXMLHttpRequest兼容性库
- 从mongoDB服务器获取Node服务器中的数据块
- 如何在JavaScript / Node中计算SHA256散列和Base64string编码
- 我如何使用arr.forEach来调用asynchronousJavaScript的redis调用?