Если основному процессу послать SIGTERM, то этот сигнал же не проброситься в дочерний процесс?
Мне кажется такие вещи проще на вашей ОС амостоятельно проверить. Поставить отлов сигнала и попроьовать послать
Сама ОС не делает.
Мало ли при создание процесса раст сам вешает обработчик, в доке не нашёл про это...
Так сделать два бинаря, один родительский, просто запускает дочерний. Дочерний ловит обработчик и куданить пишет, был сигнал или нет
Давайте определимся с ОС для начала. У вас UNIX-like, судя по контексту.
Раст ничего без вашей команды не сделает. По умолчанию, в процессе на все сигналы стоит прерывание работы процесса. SIGTERM не посылается дочернему процессу, только если его не посылает родитель.
Если что, для обработки сигналов есть lib.rs/signal-hook
https://en.wikipedia.org/wiki/Parent_process#Orphan_processes вот тут можно почитать подробности. В качестве workaround наверное можно в дочернем процессе проверять, не изменился ли parent pid.
зависит от параметров запуска дочернего приложения полагаю
Обсуждают сегодня