The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"демон и SIGKILL"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"демон и SIGKILL"  
Сообщение от 0xbb (ok) on 31-Мрт-06, 23:44 
демон при старте создает файл my_daemon.pid. каким образом при получении сигнала SIGKILL удалить этот файл? читал, что на этот сигнал нельзя повесить свой обработчик...
Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "демон и SIGKILL"  
Сообщение от chip email(ok) on 02-Апр-06, 13:28 
>демон при старте создает файл my_daemon.pid. каким образом при получении сигнала SIGKILL
>удалить этот файл? читал, что на этот сигнал нельзя повесить свой
>обработчик...

Верно, повесить не возможно.

Удалять следует при запуске демона. Т.е. алгоритм примерно таков:
1. Проверяем существует ли my_daemon.pid:
Нет -> создаем и начинаем работу
Да  -> см. п. 2
2. Открываем my_daemon.pid и считываем пид, далее
kill(pid, 0):
если демон существует -> завершаем работу
нет -> записываем свой пид в файл и начинаем работу.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "демон и SIGKILL"  
Сообщение от jd (??) on 02-Апр-06, 19:53 
>2. Открываем my_daemon.pid и считываем пид, далее
>kill(pid, 0):
>если демон существует -> завершаем работу
>нет -> записываем свой пид в файл и начинаем работу.

Желательно также убедиться, что pid, записанный в файле, соответствует именно этому демону.

Ещё один вариант: если демон запускается при старте системы, можно хранить его пид в /var/run (например) и до запуска каких-либо демонов делать rm -f /var/run/*.pid (если уже не делается).

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру