Выполняю межпроцессное взаимодействие через системный вызов pipe(). Ребенок записывает на один конец, и родитель должен читать другой конец трубы.Что произойдет с Linux pipe(), если один конец закроется перед другим
Родитель перед началом чтения waitpid() для завершения ребенка. Если дочерний элемент вышел с ненулевым возвращаемым значением - тогда он указывает, что у ребенка были ошибки. Таким образом, родитель просто закрывает дескриптор канала и перемещается без чтения.
Неужели это будет работать в случае успешного завершения ребенка. Родитель эффективно пожинает ребенка перед чтением трубы? Если да, то что произойдет с данными, которые находятся в пути? ОС будет заботиться о данных, безопасно достигая родительского конца?