waitpid:在类 Unix/POSIX 系统中用于“等待(或轮询)某个特定子进程状态变化”的系统调用/函数。它可以等待指定 PID 的子进程结束、停止(stopped)或继续(continued),并可通过选项实现非阻塞等待等行为。常见于进程管理与并发控制。(该词还有更偏实现细节的含义与参数组合,这里介绍最常见用法。)
/ˈweɪt pɪd/
I used waitpid to wait for my child process to finish.
我用 waitpid 等待子进程结束。
After forking multiple children, the server calls waitpid(-1, &status, WNOHANG) in a loop to reap exited processes without blocking the main event loop.
在 fork 出多个子进程后,服务器会在循环里调用 waitpid(-1, &status, WNOHANG),以非阻塞方式回收已退出的进程,避免卡住主事件循环。
waitpid 可以拆解为 wait + pid:
waitpid(2)(系统调用文档)