【发布时间】:2024-01-07 06:50:01
【问题描述】:
我正在尝试编写一个程序,该程序分叉并等待他的孩子完成,然后孩子对输入进行一些工作,然后以与父母相同的方式进行分叉,依此类推。
现在,我知道 fork 会将文件描述符数组复制到子项,并且我应该关闭与父项关联的那些,但我不知道哪些是父项。我需要给我的孩子父母的 pid 吗?
一个多小时以来,我一直在努力思考它,我想我有某种思维障碍,因为我无法得出结论。
TL;DR:作为子进程,我如何知道哪些文件描述符属于我的父进程?
【问题讨论】:
-
"关闭与父关联的那些,但我不知道哪个是父。" 为什么?您正在编写代码。
-
你试过
getppid()函数了吗?
标签: c linux pipe fork file-descriptor