gpt4 book ai didi

c - parent 如何等待所有子进程完成然后在收到 SIGINT 时退出?

转载 作者:太空宇宙 更新时间:2023-11-04 07:37:37 26 4
gpt4 key购买 nike

我正在用 C 编写一个多进程程序。

我希望父进程可以等待所有子进程完成然后退出它收到 SIGINT。

我有两个问题。

  1. parent 如何记录它 fork 的子进程的每个 pid。子进程可能会在录制功能运行之前完成主要过程。

  2. 如果 parent 不知道它有多少个子进程。他怎么等所有子进程完成。

提前致谢。

最佳答案

您在派生子进程时记录它们的 pid(如果需要)。在 pid = 0 的循环中调用 waitpid 它将返回退出的进程的 pid 或返回 -1 并且如果 errno = ECHILD 你没有留下任何奴隶。

关于c - parent 如何等待所有子进程完成然后在收到 SIGINT 时退出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7545916/

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