僵尸进程,SIGCHLD,在unix中退出

时间:2013-06-04 14:48:54

标签: unix zombie-process sigchld

子节点的每个出口(出口或退出)是否都将SIGCHLD发送给它的父节点?如果是,那么如何创建僵尸进程?因为等待系统调用通常在SIGCHLD处理程序中调用。

1 个答案:

答案 0 :(得分:2)

是的,每个死亡的进程都会导致SIGCHLD被发送到其父进程 - 除非父进程已将SIGCHLD设置为忽略。

如果进程'父级没有忽略SIGCHLD,那么死亡的孩子将成为僵尸,直到父级使用waitpid()或其中一个变种获得它为止。如果父母没有收获死去的孩子,它将仍然是一个僵尸。