Отречься от детей из процесса порождения - PullRequest
1 голос
/ 01 августа 2011

У меня есть приложение C, которое порождает детей с помощью fork / exec.Мой процесс spawn работает без остановок, и он создает файл журнала, используя канал unix.Каждые 24 часа я хочу сделать резервную копию журналов.Для этого я использую скрипт.Как только скрипт завершится, я хочу убить и перезапустить процесс.Все идет нормально.Но может случиться так, что там все еще рождаются активные дети.Можно ли отречься от них перед тем, как убить и перезапустить процесс порождения?

Обычно, когда убивают родителя, сразу же убивают всех детей.

1 Ответ

3 голосов
/ 01 августа 2011

Процесс не просто умирает, когда его родитель умирает .Скорее всего, ваши дочерние процессы получают какой-то сигнал (SIGHUP?) По какой-то причине.

Если вы хотите, чтобы ваши дети сохранялись, вам нужно выяснить, что это за сигнал, и игнорировать его сразу после fork.

...