📜  Node.js os.cpus() 方法(1)

📅  最后修改于: 2023-12-03 15:17:55.117000             🧑  作者: Mango

Node.js os.cpus() 方法

Node.js中的os模块提供了一些有用的方法来管理操作系统的各种信息。其中,os.cpus()方法可以帮助我们获取当前系统的CPU信息。

语法
os.cpus()
描述

os.cpus()方法以数组的形式返回包含每个逻辑CPU核心信息的对象。每个核心对象包含以下属性:

  • model: CPU型号
  • speed: CPU速度(MHz)
  • times: 包含CPU使用情况的对象

times对象包含以下属性:

  • user: 用户态操作CPU的时间
  • nice: 用户态下,以降低SUID权限运行的程序使用CPU的时间
  • sys: 核心态下操作CPU的总时间
  • idle: 空闲的CPU时间
  • irq: 处理硬件中断请求的时间
示例
const os = require('os');
const cpus = os.cpus();

console.log(`当前系统共有${cpus.length}个CPU核心:`);
cpus.forEach((core, index) => {
  console.log(`- 第${index + 1}核心信息:`);
  console.log(`    - Model: ${core.model}`);
  console.log(`    - Speed: ${core.speed}MHz`);
  console.log(`    - Usage:`);
  console.log(`        - User: ${core.times.user}`);
  console.log(`        - Sys: ${core.times.sys}`);
  console.log(`        - Idle: ${core.times.idle}`);
});

输出结果:

当前系统共有4个CPU核心:
- 第1核心信息:
    - Model: Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
    - Speed: 2000MHz
    - Usage:
        - User: 11766640
        - Sys: 10212070
        - Idle: 1372676530
- 第2核心信息:
    - Model: Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
    - Speed: 2000MHz
    - Usage:
        - User: 10095440
        - Sys: 11859440
        - Idle: 1372880960
- 第3核心信息:
    - Model: Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
    - Speed: 2000MHz
    - Usage:
        - User: 7473060
        - Sys: 6561880
        - Idle: 1373264330
- 第4核心信息:
    - Model: Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
    - Speed: 2000MHz
    - Usage:
        - User: 7449120
        - Sys: 5948180
        - Idle: 1373271620

以上示例展示了如何使用os.cpus()方法获取当前系统的CPU信息,并打印出每个核心的相关信息。