📜  Node.js os.cpus() 方法

📅  最后修改于: 2022-05-13 01:56:28.086000             🧑  作者: Mango

Node.js os.cpus() 方法

os.cpus() 方法是 os 模块的内置应用程序编程接口,用于获取有关计算机每个逻辑 CPU 内核的信息。

句法:

os.cpus()

参数:此方法不接受任何参数。

返回:此方法返回一个对象,其中包含有关每个逻辑 CPU 内核的信息。每个返回的对象都将包含以下属性:

  • model:一个字符串,指定 CPU 内核的型号。
  • speed:一个数字,指定 CPU 内核的速度(以 MHz 为单位)。
  • times:一个包含以下属性的对象:
    • user:一个数字,指定 CPU 在用户模式下花费的时间,以毫秒为单位。
    • nice:一个数字指定 CPU 在 nice 模式下花费的时间(以毫秒为单位)。
    • sys:一个数字指定 CPU 在 sys 模式下花费的时间,以毫秒为单位。
    • idle:一个数字,指定 CPU 处于空闲模式的时间(以毫秒为单位)。
    • irq:一个数字,指定 CPU 在 irq 模式下花费的时间,以毫秒为单位。

注意: nice值仅用于 POSIX。在 Windows 操作系统上,所有处理器的nice值始终为 0 。

下面的例子说明了 Node.js 中os.cpus() 方法的使用:

示例 1:

// Node.js program to demonstrate the   
// os.cpus() method
  
// Allocating os module
const os = require('os');
  
// Printing os.cpus() values
console.log(os.cpus());

输出:

[ { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 900000, nice: 0, sys: 940265, idle: 11928546, irq: 147046 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 860875, nice: 0, sys: 507093, idle: 12400500, irq: 27062 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 1273421, nice: 0, sys: 618765, idle: 11876281, irq: 13125 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 943921, nice: 0, sys: 460109, idle: 12364453, irq: 12437 } } ]

示例 2:

// Node.js program to demonstrate the   
// os.cpus() method
  
// Allocating os module
const os = require('os');
  
// Printing os.cpus()
var cpu_s=os.cpus();
var no_of_logical_core=0;
cpu_s.forEach(element => { 
    no_of_logical_core++;
    console.log("Logical core "
            + no_of_logical_core + " :");
    console.log(element); 
}); 
  
console.log("total number of logical core is "
        + no_of_logical_core);

输出:

Logical core 1 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 856437, nice: 0, sys: 866203, idle: 11070046, irq: 133562 } }
Logical core 2 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 805296, nice: 0, sys: 462656, idle: 11524406, irq: 23218 } }
Logical core 3 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 1225062, nice: 0, sys: 566421, idle: 11000875, irq: 12203 } }
Logical core 4 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 900234, nice: 0, sys: 420000, idle: 11472125, irq: 11781 } }
total number of logical core is 4

注意:以上程序将使用node index.js命令编译运行。

参考: https://nodejs.org/api/os.html#os_os_cpus