1

Node js 模块在操作过程中请求远程服务上的一些资源,最好在退出时释放。我们知道有很好的:

process.on('exit', function() {
    // ...
});

但是据说它不会等待任何异步操作完成。所以问题是是否有任何解决方法(应该有一些,因为它是相当广泛的用例)?也许可以开始单独的过程或其他什么?

4

2 回答 2

1

我见过的唯一解决方法是添加一个等待循环,而不是从 .on('exit', 函数完成/返回,直到一个属性已全局更新。完全是一个笨拙的设计明智的做法,非常糟糕的做法,但我已经看到它适用于短调用(我认为有一些超时,但我从不费心去研究细节)。

于 2012-06-30T09:23:31.600 回答
1

我认为您可以/应该在之前进行清理on('exit')通过收听ctrl-c这篇文章中的信号。

于 2012-06-30T09:26:02.993 回答