标签:防止僵尸进程产生
#include<stdio.h>static pid_t so_pid;
}
else if( so_pid > 0 )
{
signal( SIGCHLD, chld_wait );
fprintf( stderr, "父进程[%d]\n", getpid() );
while( 1 )
{
}
exit( 0 );
}
sleep(2);
fprintf( stderr, "子进程退出[%d]\n", getpid() );
exit(0);
}
运行结果:
父进程[4972]
子进程退出[4973]
父进程[4972]已成功捕捉子进程[4973]退出信号
查看有无僵尸进程:
ps -ef |grep defunct
无僵尸进程
若将signal( SIGCHLD, chld_wait );此行注释掉,
则运行结果:
父进程[4972]
子进程退出[4973]
查看有无僵尸进程:
ps -ef |grep defunct
有僵尸进程产生
标签:防止僵尸进程产生
原文地址:http://blog.csdn.net/ssz912728941/article/details/34436469