gpt4 book ai didi

node.js - 杀死 NodeJS 子进程

转载 作者:搜寻专家 更新时间:2023-10-31 22:50:25 25 4
gpt4 key购买 nike

在开发过程中,我在 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() });
};
};

最佳答案

添加这个

  process.on('uncaughtException', function(err) {
console.log(err);
server.kill();
process.kill();
});

解决问题。对如何在您的应用中处理此问题有何建议?

关于node.js - 杀死 NodeJS 子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25186875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com