linux top -Hp [PID] show节点进程有4个节点线程和4个v8工作线程

时间:2016-02-19 08:07:45

标签: linux node.js multithreading v8

我从其他文章中了解到节点js是单线程,但是当我在服务器上运行节点时,我发现它有4个额外的节点线程和4个V8工作线程。

我想知道原因。所有这些线程的责任是什么?

任何人都可以提供一些有用的文件或一些解释吗?

我的行动:

  • 启动我的节点程序。
  • ps aux |grep xxx找到pid
  • 使用top -Hp [the pid]来显示节点进程的线程

screen shot of top -Hp

1 个答案:

答案 0 :(得分:0)

我推断节点js处理的frome节点源代码有两种类型的步骤池:

  1. libuv线程池。线程名称与节点进程相同。它执行有关I / O操作的任务。
  2. V8 WorkerThread池。这些线程做了一些背景工作,比如GCcomplie optimizing,我猜。 default pool size为4.您可以使用选项--v8-pool-size=N运行节点进行更改并使用top -Hp进行查看。
  3. v8-platform.h包含一些关于后台线程和前台线程的提示。

    如果有人有想法,欢迎改进这个答案。