跳到主要内容

3.3-os和event模块

Create by fall on 2021-07-14 Recently revised in 2021-08-24

系统模块

const os = require('os')
console.log(os.totalmem()) // 系统内存总量
console.log(os.freemem()) // 操作系统空闲内存量
const men = os.freemem() /os.totalmem() *100
console.log('内存占有率为'+men.toFixed(2)+"%")

第三方系统模块

cpu-stat

const cpuStat = require('cpu-stat')
cpuStat.usagePercent((err,percent)=>{
console.log(perc)
})

Create by fall on 13 Oct 2023 Recently revised in 13 Oct 2023

Event模块

最简单的示例

const events = require('events')
var eventEmitter = new events.EventEmitter();

eventEmitter.on('open', openDataBase);
eventEmitter.on('read',()=>{
console.log('读取')
})
function openDataBase(){
console.log('打开数据库')
eventEmitter.emit('read')
}
eventEmitter.emit('open')

event 模块配合 fs 模块使用

// log.txt
厉害了,我的天
// ev1ent.js
const events = require('events')
const fs = require('fs')
var eventEmitter = new events.EventEmitter();
fs.readFile('./log.txt',(err,data)=>{
if(err){
console.log('读取错误')
}else{
eventEmitter.emit('my_event',data);
}
})
// 先把触发的事件定义好,在触发之后,会执行该事件
eventEmitter.on('my_event', (data) => {
console.log('output:');
console.log(data.toString())
})