gpt4 book ai didi

linux - 如果我安装了 SIGCHLD 处理程序,对特定 pid 的 *blocking* 等待是否仍然有效?

转载 作者:IT王子 更新时间:2023-10-29 01:23:08 24 4
gpt4 key购买 nike

我有一些东西使用一堆异步分支来完成它的工作(在工具包下)。

在特定的代码区域,我 fork ,然后在子进程上进行阻塞等待。

SIGCHLD 处理程序是否会在阻塞等待看到信号之前吞噬信号,让我可能挂起,或者等待总是会得到一些东西?

最佳答案

SIGCHLD 处理程序在子进程退出的事件边缘被触发。对 waitpid() 的阻塞调用将等待该特定子进程的条件、级别不再存在。

当进程退出时,将传递一个SIGCHLD,其处理程序将正常执行。如果该进程上有 waitpid() 阻塞,它将正常返回,而不管是否存在信号处理程序。

关于linux - 如果我安装了 SIGCHLD 处理程序,对特定 pid 的 *blocking* 等待是否仍然有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10399987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com