NodeJ中的线程池

时间:2015-05-22 05:03:46

标签: node.js

我知道NodeJS使用线程池来阻止I / O调用。如果线程池中的所有线程忙于某些工作而另一个请求进来,它会怎么做?

1 个答案:

答案 0 :(得分:0)

如果需要线程池且没有可用的工作线程,则请求将排队,直到工作人员空闲为止。但是,线程池不是唯一的方法。有三种操作类型利用libuv中的线程池,如标题文件I / O 下的页面底部here所述。

这些操作类型是:

  • 文件系统操作
  • DNS函数(getaddinfo和getnameinfo)
  • 用户指定的代码

虽然不能直接回答您的问题,但我相信this post Jason在解释Node.js中的线程池方面做得非常出色。它没有深入介绍,它向您介绍了libuv库提供的功能,并提供了有关线程池主题的非常丰富的文献的链接。