gpt4 book ai didi

linux - 为什么fork()的返回值不是反向的?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:27:22 25 4
gpt4 key购买 nike

我们知道 fork() 创建了一个新的子进程并将子进程的 PID 返回给父进程并将 0 返回给子进程。我在想为什么他们这么设计的(返回值),为什么返回值不是倒序的。我觉得把父PID返回给子,0给父也可以,每个 child 都知道谁是它的父进程,每当它被终止时,它都会向其各自的父进程发出信号,这种方法的后果是什么?我错过了什么吗?

最佳答案

之所以这样,是因为任何子进程都可以通过调用getppid获取其父进程的pid,而如果没有fork,父进程将不知道子进程的pid是什么> 告诉它。

如果父进程想要​​等待一个特定的子进程退出,它需要将子进程的pid传递给waitpid

关于linux - 为什么fork()的返回值不是反向的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35944071/

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