Всякий раз, когда я читаю о процессах детей в C, порожденных fork(), родитель ждет, пока дети закончат. Тем не менее, я столкнулся с другой проблемой: Я хочу, чтобы порождали двух детей, а затем заставили их ждать, пока родитель не даст им работу.Ожидание дочерних процессов
f.example: В клиенте:
fork() two children
in parent, connect to a server
server returns some work to do
parents hands work over to children
Как я могу добиться этого? Я не прошу большого фрагмента кода, просто руководство и, возможно, некоторый код для объяснения.
Труба родителя может разговаривать с ребенком по трубе (2) –
Им нужен способ связи с родителем. Это называется Inter-Process Communication (IPC). В UNIX для прямого раздвоенного chuld это обычно труба. –
Попросите ребенка прочитать сообщение из старой доброй трубы или очереди сообщений, и это будет спать до тех пор, пока сообщение не станет доступным. – PSkocik