现在的位置: 首页 > 综合 > 正文

application bug:has SIGCHLD set to SIG_IGN but calls wait()

2013年03月07日 ⁄ 综合 ⁄ 共 278字 ⁄ 字号 评论关闭

在一台Linux机器的系统日志会见到如下错误日志:

kernel: application bug: 程序名(行号) has SIGCHLD set to SIG_IGN but calls wait()

    通常SIGCHLD信号是在子进程结束时,内核向父进程发送的信号,正常情况下,父进程调用wait函数收集子进程的状态信息,释放子进程资源。

   对于一些并发服务器,常常fork很多子进程,为了省事,直接将此SIGCHLD信号的处理方式设为忽略,可让内核把僵尸子进程转交给init进程去处理,省去了大量僵尸进程占用系统资源。如果在这种情况下,仍然调用wait就会产生此错误.

 

抱歉!评论已关闭.