gpt4 book ai didi

c - 我怎么知道哪个 child 退出了C?

转载 作者:行者123 更新时间:2023-12-02 07:32:11 26 4
gpt4 key购买 nike

我有 3 个 child ,每次都在不同的时间以不同的顺序结束,但我不知道如何先结束

我有这样的东西,其中“winner”、“second”和“third”是随机生成的时间,第一个结尾是“winner”,但我不知道是谁

    wait(&winner);
wait(&second);
wait(&third);
printf("======================================\n");
printf("----------Classification---------------\n");
printf("======================================\n");
printf("-First-.... Team %d , time: %d\n",/*1*/, WEXITSTATUS(winner));
printf("-Second-.... Team %d , time: %d\n",/*2*/, WEXITSTATUS(second));
printf("-Third-.... Team %d , time: %d\n",/*3*/, WEXITSTATUS(third));

最佳答案

您应该阅读 wait(2) 的手册页.它返回等待进程的 pid_t

您可能还想使用 waitpid(如果您不想真正以阻塞方式等待,请使用 W_NOHANG)。

另请阅读 signal(7) .你可以处理 SIGCHLD ....

Advanced Linux Programming有几个章节与该问题相关。

关于c - 我怎么知道哪个 child 退出了C?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20733485/

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