当我们想要给主进程发送SIGKILL
信号的时候,会发现,Worker
进程也会退出,因为SIGKILL
信号无法设置信号处理器,所以需要其他的方法来实现这个功能。代码也很简单,只需要在子进程执行一行代码即可:
1 | prctl(PR_SET_PDEATHSIG, SIGTERM); |
对于这行代码的解释如下:
1 | PR_SET_PDEATHSIG |
意思就是说,当父进程挂了之后,子进程会收到prctl
函数第二个参数设置的信号。
当我们想要给主进程发送SIGKILL
信号的时候,会发现,Worker
进程也会退出,因为SIGKILL
信号无法设置信号处理器,所以需要其他的方法来实现这个功能。代码也很简单,只需要在子进程执行一行代码即可:
1 | prctl(PR_SET_PDEATHSIG, SIGTERM); |
对于这行代码的解释如下:
1 | PR_SET_PDEATHSIG |
意思就是说,当父进程挂了之后,子进程会收到prctl
函数第二个参数设置的信号。