专业编程基础技术教程

网站首页 > 基础教程 正文

Node.JS实战24:分离子进程

ccvgpt 2024-11-25 10:13:57 基础教程 1 ℃

通过前面几文的学习我们知道,通过使用execFile、spawn、exec可以打开外部进程并让它单独运行。

但如果在某些情况下主进程崩溃了,那么同步进程也会挂起。

Node.JS实战24:分离子进程

为了避免这种情况发生、让子进程不受主程序状态影响,那么可以使用子进程分离技术。

spawn有一个方法可以做到子进程与主进程分离、独立。

代码如下:

var cp = require("child_process");

cp.spawn("notepad",[],{detached:true},function(err,stdout,stderr){
    if(err){
        console.error(err);
    }
    console.log("stdout:",stdout)
    console.log("stderr:",stderr);
});

在本例程中,主程序会启动记事本。即时这时退出nodejs主进程(Ctrl+c),记事本也不会被关闭。

参考资料:

而在以往,没有增加这个参数时,或设置detached为false。那么当关闭子进程时,记事本也会被关闭。

Node.JS实战23:方便活灵的exec

Node.JS实战22:外部应用程序中的串联调用

Node.JS实战21:流和外部应用程序、实时数据输出

Node.JS实战20:用execFile执行外部程序

Node.JS实战19:实现加密的tcp、https服务器

Tags:

最近发表
标签列表