Есть родительский процесс, который следит за неким множеством дочерних процессов. На каждый дочерний процесс у родителя есть некий набор информации. Нужно отловить момент завершения дочернего процесса.
Сейчас я ставлю обработчик SIGCHLD, смотрю на pid завершившегося процесса и нахожу доп. инфу о процессе в списке дочерних процессов. Вся проблема в том, что если дочерний процесс очень быстро закончится, то его код сохранения pid'а в таблице (т.е. кусок сразу после fork) будет выполнен после обработчика SIGCHLD, который соответственно не найдет инфы в таблице.
Как лечить?