Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Lev Walkin                           2:5020/400     28 Apr 2003  17:30:19
 To : Andrey Ostanovsky
 Subject : Re: timelimit
 -------------------------------------------------------------------------------- 
 
 
 Andrey Ostanovsky wrote:
 
 >     Hello, Lev!
 > 
 > Понедельник Апрель 28 2003, Lev Walkin изволил/a написать Andrey Ostanovsky:
 > 
 >  >>  >> Hикто ведь не мешает, найдя нужный pid, проверить - есть ли
 >  >>  >> такой процесс, и как его зовут и т.д.
 >  >>  LW> .pid должен быть залочен процессом на все время его жизни. Если
 >  >>  LW> пид разлочен - значит процесс умер.
 >  >> Как это проверить из скрипта не пытаясь удалить файл?
 > 
 >  LW> А вот для этого программа не только должна снимать лок при выходе (он
 >  LW> так и так будет снят операционкой при cleanup), но и писать в файл
 >  LW> что-то типа строки статуса. тогда можно будет натравливать -s или
 >  LW> grep.
 > 
 > В смысле "статус"? Hомер процесса писать, или что-то типа "точка 12 пройдена"?
 
 Кажется удобной следующая конвенция:
 
 2. Процесс в ходе работы держит .pid файл открытым и залоченным.
 Содержимое файла: "<pid>\n".
 3. Когда процесс начал завершаться (а это для некоторых процессов -
 болезненный и мучительный процесс, который может продолжаться ощутимое
 время), он опустошает файл, но не снимает лок.
 4. Когда процесс завершился, лок снимается.
 1. Когда процесс стартует, он пытается залочить .pid-файл. Если у него
 это не получается, то:
 1.1 если файл не пустой, то процесс выходит с криком "там кто-то есть".
 1.2 если файл пустой, процесс продолжает попытки залочить файл в течение
 какого-то времени, после чего вываливается с диагностикой "кто-то не
 хочет умирать за разумное время".
 
 В шелле детектирование того, работает процесс или [почти] уже нет,
 происходит через test -s на .pid-файл.
 
 Очевидный недостаток - из шелла сложно продетектировать, завершается
 ли процесс, или уже умер. Есть два варианта:
 
 1. Hичего не делать. Если шелл лишний раз запустит процесс, ничего
 страшного не произойдет.
 2. Писать что-то типа "finishing\n" на этапе завершения. Hо тут тоже
 есть некоторые проблемы.
 
 -- 
 Lev Walkin
 vlm@netli.com
 
 --- ifmail v.2.15dev5
  * Origin: Netli, Inc. (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 timelimit   Phil Kulin   25 Apr 2003 01:02:17 
 Re: timelimit   Lev Walkin   25 Apr 2003 02:28:58 
 timelimit   Phil Kulin   25 Apr 2003 23:27:10 
 Re: timelimit   Lev Walkin   26 Apr 2003 05:19:46 
 timelimit   Phil Kulin   26 Apr 2003 12:26:03 
 timelimit   Andrey Ostanovsky   26 Apr 2003 18:55:15 
 Re: timelimit   Valentin Davydov   27 Apr 2003 21:44:05 
 timelimit   Andrey Ostanovsky   28 Apr 2003 01:12:38 
 Re: timelimit   Lev Walkin   28 Apr 2003 02:02:45 
 timelimit   Andrey Ostanovsky   28 Apr 2003 11:30:06 
 Re: timelimit   Lev Walkin   28 Apr 2003 12:43:07 
 timelimit   Andrey Ostanovsky   28 Apr 2003 16:48:46 
 Re: timelimit   Lev Walkin   28 Apr 2003 17:30:19 
 timelimit   Phil Kulin   01 May 2003 01:21:23 
 Re: timelimit   Lev Walkin   01 May 2003 06:25:34 
 timelimit   Andrey Ostanovsky   01 May 2003 12:04:52 
 timelimit   Phil Kulin   03 May 2003 00:58:55 
 Re: timelimit   Eugene Grosbein   03 May 2003 10:50:47 
 timelimit   Dmitry Suhodoev   04 May 2003 01:06:01 
 Re: timelimit   Eugene Grosbein   04 May 2003 22:34:17 
 timelimit   Dmitry Suhodoev   05 May 2003 08:14:56 
 timelimit   Phil Kulin   04 May 2003 21:42:49 
 timelimit   Phil Kulin   04 May 2003 08:45:42 
 Re: timelimit   Eugene Grosbein   06 May 2003 10:32:38 
 timelimit   Andrey Ostanovsky   03 May 2003 20:04:28 
 timelimit   Ilya Kulagin   28 Apr 2003 14:15:01 
 Re: timelimit   Valentin Davydov   30 Apr 2003 16:02:08 
 Re: timelimit   Lev Walkin   28 Apr 2003 02:01:43 
 timelimit   Phil Kulin   27 Apr 2003 23:10:54 
 Re: timelimit   Lev Walkin   28 Apr 2003 12:42:05 
 timelimit   Phil Kulin   30 Apr 2003 00:07:27 
 Re: timelimit   Lev Walkin   28 Apr 2003 02:00:42 
Архивное /ru.unix.bsd/7591746ecf6e.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional