在开发中,我在NodeJS项目中犯了错误。这些错误会导致出现类似以下的错误信息。
没问题,我按下了
示例代码:
events.js:85
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE
at exports._errnoException (util.js:742:11)
at Server._listen2 (net.js:1148:14)
at listen (net.js:1170:10)
at net.js:1253:9
at dns.js:82:18
at process._tickCallback (node.js:343:11)
没问题,我按下了
ctrl+C
并重新启动了进程,但我看到一些派生的子进程仍然在运行。我该如何杀死由根进程派生的所有进程?示例代码:
module.exports.start = function(options) {
gulp.watch(['*.js'], onServerRestart);
onServerRestart();
var server;
function onServerRestart(e) {
if (server) server.kill();
server = require('child_process').spawn("node", ['--harmony', './server.js'], {stdio: "inherit", cwd: process.cwd() });
};
};
ps xau | grep node
命令,然后终止所需的进程。 - Salemserver.kill('SIGKILL')
)。 - Salemnode-supervisor
的工具来管理节点进程。不过,你可以使用child-process
来执行Salem的第一个建议。 - Tony