Process Node.js 进程
Process 进程
- process.argv 是命令行参数数组,第一个元素是node,第二个元素是脚本文件名,从第三个元素开始每个元素是一个运行参数。
- process.stdout 标准输出流 console.log的定义。
console.log = function (d) {process.stdout.write(d + '\n');};
通常我们使用的console.log()向标准输出打印字符,而process.stdout.write()函数提供了更底层的接口
- process.stdin 是标准输入流,初始时它是被暂停的,要想从标准输入读取数据,你必须恢复流,并手动编写流的事件响应函数。
- process.nextTick(callback) 异步执行callback函数 为事件循环设置一项任务,Node.js 会在下次事件循环调响应时调用callback。
- process.chdir 改变进程的工作目录
- process.cwd 返回当前进程的工作目录
- process.env 返回当前linux系统的信息
- process.exit(code=0) kill当前进程,退出本进程 n=0表示正确退出,1表示异常退出
- process.getgid()、process.setgid(id) 获取和设置进程的groupid
- process.getuid()、process.setuid(id) 获取和设置进程的userid
- process.version、process.versions node.js的版本和node.js的版本对象
- process.pid、process.title、process.arch、process.platform 进程id,进程名字,进程架构(如:X64),进程平台(如:linux)
- process.memoryUsage() 进程的内存使用情况
进程事件:
//退出
process.on('exit',function(){console.log('EXIT');
});//未处理得异常
process.on('uncaughtException',function(err){console.error(err.stack)
});
接收SIGINT(Ctrl+C 退出)信号:
//在接收到信号以后 可以做一系列的操作 比如关闭链接,写日志等等。
process.stdin.resume();process.on('SIGINT',function(){console.log('Go to Sigint exiting');process.exit(0);
})
接收SIGTERM(kill命令)信号:
process.on('SIGTERM',function(){console.log('Go a SIGTERM, exiting');process.exit(0);
})
shebang 调用脚本
在你的js第一行写入下面#!/usr/bin/env node
将该文件设置为可执行(给权限)sudo chmod +x app.js
然后在写代码:
console.log('TEST');
通过以上步骤以后 你就可以在系统中 调用该文件 ./app.js
无需node 命令
示例(利用命令生成js):
#!/usr/bin/env nodevar fs = require('fs');var argv = process.argv;
console.log(argv);fs.writeFile(argv[2]+'.js',"'use strict';",function(err){if(err) throw err;console.log('has finished');
});
转载于:https://www.cnblogs.com/iyueyao/p/3466268.html
Process Node.js 进程相关推荐
- Node.js进程管理之Process模块
在前面Node.js事件运行机制也有提到,Node.js应用在单个线程运行,但是现在大部分服务器都是多处理器,为了方便使用多个进程,Node.js提供了3个模块.Process模块提供了访问正在运行的 ...
- linux进程退出所有tcp数据才发送,深入理解Node.js 进程与线程(8000长文彻底搞懂)...
前言 进程与线程是一个程序员的必知概念,面试经常被问及,但是一些文章内容只是讲讲理论知识,可能一些小伙伴并没有真的理解,在实际开发中应用也比较少.本篇文章除了介绍概念,通过Node.js 的角度讲解进 ...
- Node.js 进程管理工具
pm2 is a process manager for Node apps with a builtin load-balancer. pm2项目: https://github.com/Unite ...
- 发条js调试工具_小工具大帮手,利用 @open-node/antman 实现 node.js 进程线上调试,无须重启...
@open-node/antman 窥探进程内部,让 Node.js 生产环境线上调试成为可能 解决了什么问题? 日常在开发服务端代码,很多是服务类型的,比如基于http的api,或者一些任务脚本,需 ...
- 禅道 bug状态 open_小工具大帮手,利用 @open-node/antman 实现 node.js 进程线上调试,无须重启...
@open-node/antman 窥探进程内部,让 Node.js 生产环境线上调试成为可能 解决了什么问题? 日常在开发服务端代码,很多是服务类型的,比如基于http的api,或者一些任务脚本,需 ...
- [转] Node.js的线程和进程
[From] http://www.admin10000.com/document/4196.html 前言 很多Node.js初学者都会有这样的疑惑,Node.js到底是单线程的还是多线程的?通过本 ...
- 子进程会继承父进程的哪些内容_【学习教程】Node.js创建子进程方法
来源 | https://github.com/CommanderXL/biu-blog/issues/25 exec 其中exec可用于在指定的shell当中执行命令.不同参数间使用空格隔开,可用于 ...
- Node.js的线程和进程*2014年4月的文章
在学习本章之前,读者需要对Node.js有一个初步的认识,熟悉Node.js基本语法.cluster模块.child_process模块和express框架:接触过apache的http压力测试工具a ...
- Node.js 应用故障排查手册 —— 类死循环导致进程阻塞
类死循环导致进程阻塞 楔子 在实践篇一中我们看到了两个表象都是和 CPU 相关的生产问题,它们基本也是我们在线上可能遇到的这一类问题的典型案例,而实际上这两个案例也存在一个共同点:我们可以通过 Nod ...
最新文章
- 一加账号app_资讯知名种草App突然被大规模下架!官方回应
- 华为鸿蒙测试结果,华为鸿蒙OS系统测试结果相继出炉!果然没让花粉们久等:最好的体验...
- 阿里巴巴研究员刘国华:阿里巴巴智能运维体系建设
- designer pyqt5 界面切换_PyQT5堆叠布局:切换界面(QStackedLayout)
- javascript常用函数集
- 数据结构严蔚敏清华大学pdf_2021年清华(清华大学)电子信息考研
- 使用mybatisplus进行分页查询total总为0的原因
- bootstrap怎么强制不换行_Bootstrap方法的软件实现
- python批量转换音频采样率
- sqlServer2014用sql server身份认证登录
- Lambertian 反射(也叫理想散射)
- 石墨笔记,Onenote和Effie哪个适合SMZDM开箱评论者?
- 在IT技术圈混,怎么能不知道这几个公众号?
- 【论文阅读】Blur Calibration for Depth from Defocus
- houghpeaks
- 《果壳中的宇宙》回顾
- JS instanceof用法
- Java网络 1.17 CSS3 选择器
- Vegas如何使用透明图像作遮罩?
- Quartus中打开ModelSim遇到问题汇总
热门文章
- BERT-BiLSTM-CRF基于BERT预训练的中文命名实体识别TensorFlow实现
- 行车环境实时语义分割与深度估计
- java访问其它服务器_java – 多个客户端同时访问服务器
- vue提交mutation_为什么Vuex中必须要通过commit提交mutation?
- cifar10数据集测试有多少张图_图神经网络的ImageNet?斯坦福开源百万量级OGB基准测试数据集...
- [每日一题] OCP1z0-047 :2013-07-12 多表插入
- VS2012下基于Glut OpenGL显示一些立体图形示例程序:
- Linux内核源代码分析——中断(一鞭一条痕)(上)
- php 扩展加载顺序,关于PHP中extension加载顺序问题的解决方法
- 银行恒温恒湿监控系统解决方案