我正在命令提示符窗口中运行我的nodejs脚本。因为我希望脚本在关闭程序时执行一种清理,我需要在关闭之前调用一个函数。
如果使用CTRL-Z停止脚本,则已经发生这种情况。 但是,只要直接关闭命令提示符窗口,就不会执行此清理。
process.on('SIGINT', function() { cleaningup() });
清理是需要调用的函数。我在Windows机器上运行。
答案 0 :(得分:2)
在Linux上CTRL-Z 暂停进程,因此不执行任何清理,因为进程未终止。
如果你的意思是CTRL-C,是的,它会产生BREAK信号:它会中断程序的执行,并终止它。
当检测到CTRL-C(SIGINT)时,您发布的代码对于执行清理功能是正确的。
注意:如果您的操作系统不是Linux,请在您的问题中指明...