如何防止僵尸小孩进程?

前端之家收集整理的这篇文章主要介绍了如何防止僵尸小孩进程?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写一个使用fork()来为客户端连接生成处理程序的服务器.服务器不需要知道分叉进程会发生什么 – 它们自己工作,当它们完成时,它们应该只是死而不是变成僵尸.什么是简单的方法来完成这个?

解决方法

有几种方法,但使用 sigaction与SA_NOCLDWAIT在父进程中可能是最简单的方法之一:
struct sigaction sigchld_action = {
  .sa_handler = SIG_DFL,.sa_flags = SA_NOCLDWAIT
};
sigaction(SIGCHLD,&sigchld_action,NULL);

猜你在找的C&C++相关文章