Node.js - 获取可用的处理器数量

时间:2014-09-25 22:13:56

标签: linux node.js

这只是为了满足好奇心,看看是否有更好的方法来做到这一点。

在我的Windows 8框中,Node的process.env对象具有NUMBER_OF_PROCESSORS属性,在我的Linux机器上它没有。

显然,不同的平台有不同的环境变量,这是给定的,但似乎NUMBER_OF_PROCESSORS会是一个有用的东西。

我对Linux的快速修复是生成一个子进程来运行nproc命令,但是我想避免使用回调来简单地获取处理器数量。似乎必须有一个更简单的方法。

其他人为解决这个问题做了什么?

3 个答案:

答案 0 :(得分:68)

var os = require('os'),
cpuCount = os.cpus().length;

答案 1 :(得分:67)

它内置于节点中并调用os.cpus()

  

返回一个对象数组,其中包含有关安装的每个CPU /核心的信息:模型,速度(以MHz为单位)和时间(包含CPU /核心所用的毫秒数的对象:user,nice,sys,idle,和irq)。

此数组的长度是系统中“处理器”的数量。大多数系统只有一个CPU,因此这是该CPU的核心数。

答案 2 :(得分:2)

在您的CLI中,您可以在计算机上运行以下内核核心数。

node -e 'console.log(require("os").cpus().length)'