什么's节点js中进程退出事件的目的
What's the purpose of the process exit event in node js?
我正在查看node.js的文档:进程事件出口。
在进程即将退出时发出。此时无法阻止事件循环的退出,一旦所有退出侦听器都完成了运行,进程就会退出。因此,您只能在此处理程序中执行同步操作。这是一个很好的挂钩,可以对模块的状态进行检查(就像单元测试一样)。回调接受一个参数,即进程退出时使用的代码。
基本用法如下:
process.on('exit', function(code) {
console.log('About to exit with code:', code);
});
尽管文档中有这些信息,但我想不出一个现实生活中的例子,我想在回调中进行一些单元测试。
我想让我的应用程序尽可能健壮。您使用exit
事件做什么?
我在应用程序中使用此事件作为最后的机会,将状态保存到应用程序中的磁盘,并在应用程序关闭之前将应用程序控制的一些硬件置于已知且安全的状态。它起到了支撑作用,所以无论是什么原因导致我的应用程序死亡,我仍然有机会清理一些东西。
因此,当触发此事件时,我会检查是否有任何未保存的状态,如果有,我会使用同步I/O将其写入磁盘(在该事件中无法成功使用异步操作)。然后,我关闭了应用程序控制的一些硬件。
我不认为这意味着你应该从这个回调运行单元测试,但运行的单元测试可能使用这个回调来检查退出是否按预期触发,或者在退出时告诉单元失败。
相关文章:
- 弹出窗口出现,然后退出
- 退出全屏不起作用
- 基于两个条件退出While循环
- 如何准确执行加载脚本&退出弹出窗口
- 节点分叉子进程并获取它's错误
- 子进程未接收消息
- 我想放慢html中进程栏的速度
- firefox插件:退出不工作的应用程序观察器
- 派生进程的stdout在管道传输时工作异常
- 定时Ajax进程在用户离开页面后继续
- 无法执行文件.退出Acrobat PDF中的操作
- 如何从Node Webkit应用程序中退出外部CMD文件
- 由挂起导致的 AWS Lambda 函数“进程在完成请求之前退出”
- 什么's节点js中进程退出事件的目的
- 如何退出具有许多同步Sequelize调用的节点进程
- 使node.js进程在“;退出“;来自用户的命令
- 如何防止咕噜声进程退出
- 如何在退出循环之前等待循环内的异步进程完成
- 在phonegap中注册插件导致进程意外退出
- 我如何将事件处理程序附加到本地Node.js模块中的进程退出