首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >killall上的nodejs关闭钩子

killall上的nodejs关闭钩子
EN

Stack Overflow用户
提问于 2012-11-15 18:31:15
回答 1查看 1.2K关注 0票数 2

我正在尝试将一些关闭函数绑定到我的nodejs应用程序(版本0.8.12)。因为我产生了很多子进程,并且在分布式环境中工作,所以我现在通过

代码语言:javascript
复制
var n = spawn('killall', ['node']);

问题是,很明显,on('exit', ...)逻辑不再起作用了,实际上我有这样的东西:

代码语言:javascript
复制
process.on('exit', function() {
    if(exit_cb)
        exit_cb()
    else
        console.log('About to exit.');
});  

而且每当我杀死应用程序时,它都不会触发。

有没有办法用killall命令添加一个关闭钩子,或者我是否应该找到另一种方法来杀死我的子进程以使钩子正常工作?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-15 20:05:43

您需要监听killall通过dafault发送的SIGTERM信号。但您还需要在所有作业完成后手动停止您的进程。

代码语言:javascript
复制
process.on('SIGTERM', function() {
    if(exit_cb) {
        exit_cb();
        process.exit();
    } else {
        console.log('About to exit.');
        process.exit();
    }
});  
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13395623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档