我有这个功能并且派一个子进程来在后台运行繁重的工作。 work
模块在完成工作后发送消息。如何终止或关闭分叉进程?
function doWork() {
var child = cp.fork(__dirname + '/work');
child.on('message', function(m) {
console.log('completed: ' + m);
// try to kill child process when work signals it's done
child.kill('SIGHUP');
});
child.send({
msg: 'do work',
name: self.myname
});
}
-edit -
当工作发出信号时,我尝试了child.kill('SIGHUP')
和child.kill();
。我似乎没有杀死这个过程。如果我ps | grep node
,它仍然显示工作流程仍然有效。我错过了什么?