process.resourceUsage()


  • 返回:<Object> 当前进程的资源使用情况。所有这些值都来自 uv_getrusage 调用,该调用返回一个 uv_rusage_t 结构体
    • userCPUTime <integer> 映射到以微秒计算的 ru_utime。它与 process.cpuUsage().user 的值相同。
    • systemCPUTime <integer> 映射到以微秒计算的 ru_stime。它与 process.cpuUsage().system 的值相同。
    • maxRSS <integer> 对应 ru_maxrss,表示使用的最大常驻集大小,以千字节(1024 字节)为单位。
    • sharedMemorySize <integer> 映射到 ru_ixrss,但不被任何平台支持。
    • unsharedDataSize <integer> 映射到 ru_idrss,但不被任何平台支持。
    • unsharedStackSize <integer> 映射到 ru_isrss,但任何平台都不支持。
    • minorPageFault <integer> 映射到 ru_minflt,表示该进程的次要缺页错误次数,参见 本文提供更多详细信息
    • majorPageFault <integer> 映射到 ru_majflt,表示进程的主要页面错误数,参见 本文提供更多详细信息。此字段在 Windows 上不受支持。
    • swappedOut <integer> 映射到 ru_nswap,但不被任何平台支持。
    • fsRead <integer> 映射到 ru_inblock,表示文件系统必须执行输入操作的次数。
    • fsWrite <integer> 映射到 ru_oublock,表示文件系统执行输出的次数。
    • ipcSent <integer> 映射到 ru_msgsnd,但不被任何平台支持。
    • ipcReceived <integer> 映射到 ru_msgrcv,但不被任何平台支持。
    • signalsCount <integer> 映射到 ru_nsignals,但不被任何平台支持。
    • voluntaryContextSwitches <integer> 映射到 ru_nvcsw,表示 CPU 因进程在时间片未完成之前自愿放弃处理器而导致的上下文切换次数(通常是为了等待某个资源的可用性)。该字段在 Windows 上不受支持。
    • involuntaryContextSwitches <integer> 对应于 ru_nivcsw,表示 CPU 上下文切换的次数,这种切换是由于一个优先级更高的进程变为可运行状态,或者当前进程超过了其时间片。该字段在 Windows 上不受支持。
import { resourceUsage } from 'node:process';

console.log(resourceUsage());
/*
  Will output:
  {
    userCPUTime: 82872,
    systemCPUTime: 4143,
    maxRSS: 33164,
    sharedMemorySize: 0,
    unsharedDataSize: 0,
    unsharedStackSize: 0,
    minorPageFault: 2469,
    majorPageFault: 0,
    swappedOut: 0,
    fsRead: 0,
    fsWrite: 8,
    ipcSent: 0,
    ipcReceived: 0,
    signalsCount: 0,
    voluntaryContextSwitches: 79,
    involuntaryContextSwitches: 1
  }
*/const { resourceUsage } = require('node:process');

console.log(resourceUsage());
/*
  Will output:
  {
    userCPUTime: 82872,
    systemCPUTime: 4143,
    maxRSS: 33164,
    sharedMemorySize: 0,
    unsharedDataSize: 0,
    unsharedStackSize: 0,
    minorPageFault: 2469,
    majorPageFault: 0,
    swappedOut: 0,
    fsRead: 0,
    fsWrite: 8,
    ipcSent: 0,
    ipcReceived: 0,
    signalsCount: 0,
    voluntaryContextSwitches: 79,
    involuntaryContextSwitches: 1
  }
*/