【发布时间】:2014-12-10 11:52:02
【问题描述】:
我有一个分叉进程的 pid。现在,从我的 c 代码(在 Linux 上运行),我必须定期检查该进程是否仍在运行或终止。我不想使用像wait() 或waitpid() 这样的阻塞调用。需要(最好)一个非阻塞系统调用,它只检查这个 pid 是否仍在运行并返回子进程的状态。
什么是最好和最简单的方法?
【问题讨论】:
-
不,您不必定期检查。如果您没有收到 SIGCHLD,则该进程仍在运行。您只需在收到 SIGCHLD 时检查孩子。
标签: c linux system-calls