|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 24 Nov 2001 17:36:54 To : Alexander Ryzhov Subject : Re: SIGINT -------------------------------------------------------------------------------- Здравствуй, Alexander Ryzhov. AR> Hаш перловый скрипт запускает из себя некий дочерный процесс. AR> Требуется чтобы этот запущенный процесс не получал сигналы SIGINT. AR> Желательно чтобы его SIGINT-ы получали мы, но это не обязательно. AR> Обязательно лишь чтобы он их сам не получал. AR> Дочерний процесс злой, он еще ставит свой обработчик на SIGINT, вносить AR> изменения в программу дочернего процесса нельзя. AR> Вопрос: можно ли такое сделать и если да то как ?? возможно ли такое AR> вообще в unix-ах ? возможно ли на перле ? Hет. С точки зрения системы твоему процессу нет никакого дела до сигнала, посланного другому. Если я угадал подоплеку вопроса, то можно добиться того, чтобы Ctrl-C, нажатый в том терминале, на котором были запущены эти процессы, не долетал до того в качестве SIGINT. Hо только ценой отцепления его от этого терминала. То есть fork(), в ребенке setsid(), и только потом запускать дочерний. См. perldoc -q daemon. Только вот придется позаботиться о хранении где-то его pid - напрямую он из оригинального процесса будет недоступен. -- Artem Chuprina RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Talk.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6359de726657.html, оценка из 5, голосов 10
|