nodejs process进程

2024-07-29 16:55:04 浏览数 (2)

学习笔记来源于 哔哩哔哩小满zs的nodejs课程 && 网上搜索的一些资料

小满zs: process 进程_哔哩哔哩_bilibili

在Node.js中,process是一个全局对象,提供了许多与当前进程相关的方法和属性。

  1. process.argv:获取当前进程的命令行参数。它是一个数组,第一个元素是Node.js的可执行文件路径,第二个元素是当前执行的JavaScript文件路径,后面的元素是传递给脚本的命令行参数。
  2. process.cwd():获取当前工作目录的路径。
  3. process.exit([code]):退出当前进程,可选地指定一个退出码。默认的退出码是0,表示正常退出。
  4. process.nextTick(callback):将回调函数推迟到下一个事件循环迭代中执行。这比setTimeout(callback, 0)更高效。
  5. process.on(event, callback):监听指定的事件,并在事件发生时执行回调函数。常见的事件包括exit(进程退出时触发)、uncaughtException(捕获未处理的异常)等。
  6. process.env:包含当前进程的环境变量。它是一个对象,可以通过添加或修改属性来设置环境变量。
  7. process.pid:获取当前进程的PID(进程ID)。
  8. process.platform:获取当前操作系统的平台。
  9. process.memoryUsage():获取当前进程的内存使用情况。返回一个包含heapTotal(堆的总大小)、heapUsed(堆已使用的大小)、rss(常驻集大小)等属性的对象。
  10. process.uptime():获取当前进程的运行时间,以秒为单位。
代码语言:javascript复制
const process = require("node:process")
console.log(process.arch);//X64
console.log(process.platform);// win32
console.log(process.version);// v18.16.1

// _dirname 在esm模式下是使用不了的,可以使用cwd来进行替代
console.log(process.cwd(), __dirname);//C:Users孙飞Desktop九月份呢复习ThingsNode.js学习


// 内存信息
// { rss: 2000000, heapTotal: 4000000, heapUsed: 2000000 ,external:445598,arrayBuffer:17606}
// res: 长内存,物理内存大小
// heapTotal: V8给我们分配的堆内存的总大小包括未使用的内存
// external : 外部分内存 c或者 c   使用的
// arrayBuffer : 二进制的总量
console.log(process.memoryUsage()); 

// 退出进程
// process.exit();
// 杀死进程
// process.kill(pid, signal)
process.on("exit",()=>{
    console.log("进程退出了");
})

// setTimeout(() => {
//     process.exit();
// },5000)

// setTimeout(() => {
//     process.kill(process.pid,"SIGINT");
// },2000)

// env 环境变量
// 获取系统的全部的系统变量
// 可以进行修改,不过只在当前的进程中生效,并不会真正地去影响我们电脑里面的环境变量
console.log(process.env);

// 开发环境 http  生产环境 https
console.log(process.env.NODE_ENV == "dev" ? '开发环境' : '生产环境');

// corss-env

0 人点赞