Nodejs 信号

JavaScript015

Nodejs 信号,第1张

当Nodejs 进程接收一个信号时,会触发信号事件。我们通过 man kill 来查看所有的信号事件

强制迫使进程在运行时候突然终止,进程再结束后不能自我清理。可能会到导致系统资源无法正常释放

友好的告诉进程退出,进程先保存好数据,然后再正常退出。

给父进程发送一个TERM信号,试图杀死它和它的子进程。

和 ctrl +c 效果一致

用户键入由终端驱动程序发送的信号。这是一个终止当前操作的请求,如果捕捉了这个信号,一些 简单的 应用程序应该退出,这也是程序如果没有捕获这个信号时的默认处理方法。它的传统含义是 停止你正在做的事情并等待进一步的用户输入

HUP和TREM大致相同,但是他有特定作用。当用户从终端断开连接时候,他会自动到发送终端运行的应用程序。 HUP 通常是非自愿的,不像 TERM 明确发送。

首先我们来看一个简单的master/worker的例子

worker程序

首先无论在子进程还是父进程都可以接收linux的信号 SIGINT,SIGTERM,SIGHUP 等。

只要是程序能够监听到的退出信号。我们都可以统一通过监听 exit 来处理程序