如何杀死nodejs中的childprocess?
使用shelljs创build一个subprocess
!/usr/bin/env node require('/usr/local/lib/node_modules/shelljs/global'); fs = require("fs"); var child=exec("sudo mongod &",{async:true,silent:true}); function on_exit(){ console.log('Process Exit'); child.kill("SIGINT"); process.exit(0) } process.on('SIGINT',on_exit); process.on('exit',on_exit);
subprocess仍在运行..杀死父进程后
如果您可以使用构build在child_process.spawn
节点,则可以将SIGINT
信号发送给subprocess:
var proc = require('child_process').spawn('mongod'); proc.kill('SIGINT');
有一个好处就是主stream程应该一直存在,直到所有的subprocess终止。