4

是否可以在 node.js 中创建子进程,当它们的父进程退出时它们不会退出?

我正在运行节点 v0.6.19。

4

2 回答 2

5

是的,使用child_process.spawn并传递detached选项,然后调用child.unref().

确保您阅读了注释:http ://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options

于 2014-07-05T01:30:01.350 回答
4

是的,这是可能的。

npm install daemon

test1.js:

var
    spawn = require('child_process').spawn,
    test2 = spawn('node', ['test2.js']);

    console.log(test2.pid);

test2.js:

var daemon = require('daemon');
daemon.start();

setInterval(function() {
    // do something
}, 1000);

test1.js 将生成 test2.js 并退出。test2.js 将继续在后台工作。

于 2012-06-11T01:08:11.220 回答