在ubuntu上写的一个socket的程序,select并发的,当客户端断开,子进程要被结束,测试在ubuntu本地运行是没有问题的,同样的程序上传到服务器(CentOS)上,发现客户端关闭后,服务端没有办法结束生成的子进程,请问各位大大这是什么原因造成的啊...
出现问题的代码如下
主函数中写了
signal(SIGCHLD,sig_child);
函数实现如下:
void sig_child(int signo)
{
pid_t c_pid;
int stat;
while((c_pid=waitpid(-1,&stat,WNOHANG))>0)
printf("child %d terminated\n",c_pid);
return;
}
一直没能解决这个问题,还望有高手指点一下...
谢谢!!