不是专家,但似乎以下几行是问题所在:
((close(fd[1]) == -1) || (close(in_fd) == - 1))
尽量不要在
in_fd那里关闭。
我认为,父母正在尝试关闭与孩子同样的fd。
使用时,
dup2()您不需要关闭文件,因为
dup2()已经关闭了文件。

不是专家,但似乎以下几行是问题所在:
((close(fd[1]) == -1) || (close(in_fd) == - 1))
尽量不要在
in_fd那里关闭。
我认为,父母正在尝试关闭与孩子同样的fd。
使用时,
dup2()您不需要关闭文件,因为
dup2()已经关闭了文件。