位置: 编程技术 - 正文
推荐整理分享nodejs 子进程正确的打开方式(nodejs child_process),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:node 进程管理,nodejs多进程,node 进程管理,node 进程管理,node fork子进程,node创建子进程,node创建子进程,nodejs子进程退出,内容如对您有帮助,希望把文章链接给更多的朋友!
因为库太拙了,需要在 nodejs 里调用子进程来获取数据。然而看到 child_process 的文档真是头疼,这么多种启动子进程的方法直接推到人面前,也没个解释,命名也十分无用。只能一个个地查看详细说明来找到应该使用的那个……所以我整理了一下。
首先是同步创建子进程的那几个函数。会阻塞 nodejs 的主循环。无用。(要是写小脚本的话我直接上 shell 或者 Python 了,干嘛跟自己过不去呢。)
exec :调用 shell 来执行命令的。这部分跟「exec」这个词的 UNIX/C 语义刚好相反。
execFile :不调用 shell,直接执行命令。这命名不明所以。
fork :执行一个 新的 nodejs 进程,并且建立一个专用的 IPC 通道。子进程除了 IPC 通道外与父进程无任何瓜葛!命名真是一如既往地误人子弟。默认使用与父进程相同的可执行文件(nodejs 版本),也可以另外指定。
spawn :相当于 Python 的 subprocess,可以指定是否使用 shell。默认不使用 shell。也支持 cwd 啊 env 啊 argv0 啊之类的参数。
结论:如果需要用 Python 的 subprocess.run / Popen 类似的功能,就使用 child_process.spawn 。 exec 开头的那个函数似乎没啥大用,大概跟 subprocess 的 getoutput / check_call 之类的一样只是有一些预设而已吧。
mac上node.js环境的安装测试 如果大家之前做过web服务器的人都知道,nginx+lua与现在流行的Node.js都是可以做web服务器的,前者在程序的写法和配置上要比后者麻烦,但用起来都是差不多.
Node.js使用gm拼装sprite图片 从设计图切图得到了个小图标,是按钮的两种状态,然后我就寻思着把他们拼成一张sprite图片.之前用过gulp的sprite插件,但这次我不想搞的太隆重.拼图我知
详解node如何让一个端口同时支持https与http 众所周知node是一个高性能的web服务器,使用它可以很简单的创建一个http或https的服务器。比如一个很简单的http服务器:varhttp=require('http');varhttps=require('
友情链接: 武汉网站建设