Вопрос

Я пытаюсь выполнить программу от родителя, используя execl. Я делаю обычную настройку трубы и вилку. Вот хитрость ... Мне нужны мои дети (может быть произвольное количество детей), чтобы все общались с родителями.

Программа " A " (родительский) создает разветвления канала и запускается в "B" (Ребенок). В функции main () программы B мне нужно уметь читать и писать в канал.

Есть ли какой-нибудь способ получить доступ к моим дескрипторам файлов канала в дочернем процессе после того, как Excel захватит и выполнит мой дочерний процесс?

Спасибо, ~ Эрик

Это было полезно?

Решение

execl (3) не влияет на файловые дескрипторы, за одним исключением

Можно пометить дескриптор файла близко к exec с помощью fcntl (2) , но, как правило, различные разновидности execve (2) не влияют на открыть дескрипторы файлов, и они остаются открытыми у детей.

Другие советы

Прочитайте Руководство Beej по межпроцессному взаимодействию Unix (его можно найти по адресу . http://beej.us/guide/ ), особенно раздел 4.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top