เมธอด process.cpuUsage() ใช้สำหรับดึงข้อมูลการใช้ CPU ของผู้ใช้และกระบวนการ (process) ที่กำลังทำงานอยู่ ข้อมูลจะคืนค่าในรูปออบเจ็กต์ที่มีพร็อพเพอร์ตี user และ system ค่าที่ได้จะเป็นไมโครวินาที (microseconds) คือ 10^-6 วินาที ค่าที่คืนอาจมากกว่าเวลาจริงที่ผ่านไปหากมีหลายคอร์ (cores) ทำงานสำหรับกระบวนการที่ทำงานอยู่
ไวยากรณ์
process.cpuUsage([previousValue])
พารามิเตอร์
เมธอดนี้รับพารามิเตอร์เดียว ซึ่งกำหนดดังนี้:
previousValue – พารามิเตอร์ตัวเลือก นี่คือค่าที่คืนมาเดิมจากการเรียก
process.cpuUsage()ครั้งก่อน
ตัวอย่าง
สร้างไฟล์ชื่อ cpuUsage.js และคัดลอกโค้ดด้านล่าง หลังจากสร้างไฟล์แล้ว ใช้คำสั่งต่อไปนี้เพื่อรันโค้ด:
node cpuUsage.js
cpuUsage.js
// โปรแกรม Node.js สาธิตการใช้ process.argv
// นำเข้าโมดูล process
const process = require('process');
// ดึงรายละเอียดการใช้ CPU โดยเรียกเมธอดด้านล่าง
const usage = process.cpuUsage();
// แสดงค่าการใช้ CPU
console.log(usage);
ผลลัพธ์
admin@root:~/node/test$ node cpuUsage.js
{ user: 352914, system: 19826 }
ตัวอย่างเพิ่มเติม
ลองดูตัวอย่างอีกหนึ่งกรณี:
// โปรแกรม Node.js สาธิตการใช้ process.argv
// นำเข้าโมดูล process
const process = require('process');
// ดึงรายละเอียดการใช้ CPU โดยเรียกเมธอดด้านล่าง
var usage = process.cpuUsage();
// แสดงค่าการใช้ CPU
console.log("cpu usage before: ", usage);
// แสดง timestamp ปัจจุบัน
const now = Date.now();
// วนลูปเพื่อหน่วงกระบวนการประมาณ 100 มิลลิวินาที
while (Date.now() - now < 100);
// หลังจากใช้ CPU ประมาณ 100ms
// เรียก process.cpuUsage() อีกครั้ง...
usage = process.cpuUsage(usage);
// แสดงค่าการใช้ CPU ใหม่
console.log("Cpu usage by this process: ", usage);
ผลลัพธ์
admin@root:~/node/test$ node cpuUsage.js
cpu usage before: { user: 357675, system: 32150 }
Cpu usage by this process: { user: 93760, system: 95 }