Tag: sigint

听听terminal会话“closures”事件

在terminal中,我启动后台进程A,进而启动进程B.进程B写入terminal(进程A已经传递了B正确的TTY文件描述符)。 我害怕的是,如果用户(在某些情况下,我)closuresterminal窗口,而不发送进程A或B SIGINT。 可能发生的是,即使用户closures了进程B仍然会尝试写入terminal。 更糟糕的是,用户可能会打开一个新的terminal窗口,它可能会假定与另一个terminal具有相同的身份/文件描述符,然后通过进程B写入。 基本上,我正在寻找一种方法来“terminal会话”的事件,如terminal会话被closures。 是否有可能在Node.js过程中监听这样的事件? 也许有一个相应的处理程序类似于process.on('SIGINT') ? 我猜测SIGTERM事件可能是听到的事件,但现在在试验代码之后,不要以为是事实。

如何正确使用Express.js处理SIGINT?

当我的Express.js服务被SIGINT停止时,我需要做一些有用的事情。 使用Express.js版本3.0.6,我明白这应该工作: var express = require('express'); var app = express(); var server = app.listen(3000); process.on('SIGINT', function() { console.log('Do something useful here.'); server.close(); }); 但是这个过程不会让我回到Bash提示符,除非我发出SIGINT ( Control – C )两次: $ node problem.js ^CDo something useful here. ^CDo something useful here. net.js:1046 throw new Error('Not running'); ^ Error: Not running at Server.close (net.js:1046:11) at process.<anonymous> (/path/to/problem.js:8:10) […]