172 похожих чатов

Всем привет, такой вопрос. Есть приложение, которое создает std::process::Child.

Если основному процессу послать SIGTERM, то этот сигнал же не проброситься в дочерний процесс?

12 ответов

6 просмотров

Мне кажется такие вещи проще на вашей ОС амостоятельно проверить. Поставить отлов сигнала и попроьовать послать

Ivan-Krivosheev Автор вопроса
Alex Ilizarov
Мне кажется такие вещи проще на вашей ОС амостояте...

Мало ли при создание процесса раст сам вешает обработчик, в доке не нашёл про это...

Ivan Krivosheev
Мало ли при создание процесса раст сам вешает обра...

Так сделать два бинаря, один родительский, просто запускает дочерний. Дочерний ловит обработчик и куданить пишет, был сигнал или нет

Ivan Krivosheev
Сама ОС не делает.

Давайте определимся с ОС для начала. У вас UNIX-like, судя по контексту.

Ivan Krivosheev
Linux, да.

Раст ничего без вашей команды не сделает. По умолчанию, в процессе на все сигналы стоит прерывание работы процесса. SIGTERM не посылается дочернему процессу, только если его не посылает родитель.

Ivan Krivosheev
Спасибо.

Если что, для обработки сигналов есть lib.rs/signal-hook

Ivan Krivosheev
Спасибо.

https://en.wikipedia.org/wiki/Parent_process#Orphan_processes вот тут можно почитать подробности. В качестве workaround наверное можно в дочернем процессе проверять, не изменился ли parent pid.

зависит от параметров запуска дочернего приложения полагаю

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Всем здравствуйте!) У меня такой вопрос. Есть два роута, роут1 и роут2. Они связаны с очередью some_queue. По задаче предполагается, что есть два паблиша. Паблиш1 отправляет...
Format
10
Вопрос по WIN32: Насколько я понимаю то все функции win32 привязаны к объектам операционной системы. Например консоль, файл, кисть, окна итд. Следовательно функции win32 упра...
Tommy Vercetti
6
Hello, can I install macOS and run flutter on a virtual machine? Is it possible to print for iphone?
Mazones
11
кто-то пользуется компонентами rx ? как их лучше ставить, через OPM? (lazarus)
Iluha Companets
15
В смысле более затратная? Общая стоимость владения лошадью меньше, чем автомобиля. В среднем.
Sergej R
10
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Слушайте, ещё такая интересная задачка. Сделан аудит действий пользователей через триггеры в базе, соответственно каждый пользователь имеет свой логин и пароль в базе. Это пре...
Сергей Бычков
12
Карта сайта