假设我们的流程创建了一个子项,然后调用wait()
。
当我尝试发送signal()或
时kill -SIGCHLD <PID>
根本没有任何反应。
所以问题是:Linux中的进程如何确定孩子没有发送信号SIGCHLD
?或者,也许还有另一种机制?
答案 0 :(得分:0)
内核会处理这个问题。
wait()
不是一个信号处理程序,侦听发送给进程的(任何)SIGCHLD
,因为它可能是通过sigaction()
或{{1}建立的}}
来自wait()
's POSIX spec(我强调):
wait()和waitpid()函数应获取与其中一个调用者的子进程相关的 的状态信息 。