【发布时间】:2013-12-13 10:45:44
【问题描述】:
我在 node.js 中有一个互联网半依赖代码
它取决于互联网的更新和启动。
使用 process.on('uncaughtException') 我能够解决所有互联网连接问题。
我想要一种方法来停止脚本,等待给定的时间,然后从头重新启动应用程序。
我试过了:
process.on('uncaughtException', function(err) {
console.log('Caught fatal error ' + err + ', will restart in 10sec');
setTimeout(function() {
var arg = ['-c', 'sh start.sh'],
child = spawn('bash', arg);
process.exit();
}, 10000);
});
它确实重新启动了脚本,但在另一个实例中,这意味着当我 ctrl + c 终止进程时,我的日志显示 node.js 的 X 实例正在运行。 (以多个“用户终止进程。终止路径/to/app.js”结束日志) 我想在生成 start.sh 之前杀死脚本
(nb:start.sh 是一个简单的 bash 脚本,它使用一些参数启动我的应用程序)。
【问题讨论】:
标签: javascript node.js exception