假设我有一个进程,它恰好产生了一个子进程。现在,当父进程出于某种原因(正常或异常,通过kill,^ C,断言失败或其他任何原因)退出时,我希望子进程死亡。如何正确地做到这一点?
子进程可以SIGHUP通过PR_SET_PDEATHSIG在prctl()syscall中指定选项来要求父进程去世时内核发出(或其他信号),如下所示:
SIGHUP
PR_SET_PDEATHSIG
prctl()
prctl(PR_SET_PDEATHSIG, SIGHUP);
有关man 2 prctl详细信息,请参见。
man 2 prctl
编辑:这是仅Linux