当父进程被终止时,Nodejs分离的子进程被终止

时间:2016-07-05 15:44:08

标签: javascript node.js linux

我在Linux上使用节点进程来生成运行bash脚本的子进程。 bash脚本执行dist-upgrade。执行dist-upgrade杀死节点,该节点会终止父进程,但也会进行升级。

根据nodejs文档,如果父进程退出,子进程可以继续运行,如果子进程已使用detached标志生成。

如果我运行此代码:

const child_process = require("child_process");
child_process.spawn('xterm', [], {
    detached: true,
    stdio: ['ignore','ignore','ignore']
}).unref();

当我在webstorm中杀死父进程时,子进程(xterm窗口)也退出...当我使用kill -9/15/...杀死父进程时,子进程继续运行。因此,似乎某些方法仍然可以在分离时杀死子进程。但我不确切知道何时或为何以及如何避免它?

0 个答案:

没有答案