获取内存相关信息

使用 os 模块之前首先需要引入该模块,代码如下:

const path = require("os");

本节将对如何使用 os 模块获取内存相关信息进行讲解。

获取系统剩余内存

通过 os 模块的 freemem() 方法可以获取空闲的系统内存量,该方法返回一个整数(单位:字节)。示例代码如下:

const os = require("os")
console.log("剩余内存:"+os.freemem()+"B")

运行结果如下:

剩余内存:3788435456B

使用 os 模块的相关方法获取信息时,由于这些方法大部分都没有参数,因此本章讲解时,将不会单独列出各个方法的语法,而是直接在示例中通过 os.*** 的形式进行调用。

获取系统总内存

通过 os 模块的 totalmem() 方法可以获取系统的总内存量,该方法返回一个整数(单位:字节)。示例代码如下:

const os = require("os")
console.log("总内存:"+os.totalmem()+"B")

运行结果如下:

总内存:8455630848B

【例8.1】显示系统的内存使用情况。(实例位置:资源包\源码\08\01)

新建一个 js.js 文件,该文件中首先使用 os 模块的 freemem() 方法和 totalmem() 方法获取系统的剩余内存和总内存,然后将获取到的内存单位转换为 GB,并且计算内存的使用率(保存 2 位小数),最后分别输出总内存、剩余内存以及内存使用率。代码如下:

const os=require("os")
var free1=os.freemem()
var all1=os.totalmem()
var free=(free1/1024/1024/1024).toFixed(2)    //将剩余内存的单位转换为GB
var all=(all1/1024/1024/1024).toFixed(2)      //将总内存的单位转换为GB
rate=((all1_free1)/all1*100).toFixed(2)
console.log("总内存:"+all+"GB")
console.log("剩余内存:"+free+"GB")
console.log("内存使用率:"+rate+"%")

程序运行结果如下:

总内存:15.87GB
剩余内存:8.35GB
内存使用率:47.39%

上面的运行结果为笔者计算机当前的内存使用状态,读者的运行结果可能会与此不同,并且多次运行的结果也可能不同,这都是正常情况。