execl管道没有重复

时间:2009-09-11 21:02:17

标签: c++ c exec pipe

我正在尝试使用execl从父级执行程序。我做正常的管道设置和分叉。这是诀窍......我需要我的孩子(可以有任意数量的孩子)与父母沟通。

程序“A”(父)创建管道叉并执行“B”(子)。在程序B的main()函数中,我需要能够读取和写入管道。

在excel接管并执行我的子进程后,有没有办法在子进程中访问我的管道文件描述符?

谢谢你, 〜埃里克

2 个答案:

答案 0 :(得分:1)

execl(3)对文件描述符没有影响,但有一个例外

可以使用fcntl(2)标记文件描述符close-on-exec,但通常execve(2)的各种风格对打开的文件描述符没有影响,并且它们在子项中保持打开状态。

答案 1 :(得分:0)

阅读 Beej的Unix进程间通信指南(您可以在 http://beej.us/guide/找到它),尤其是第4部分。