Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Процесс перекрывает сам себя  (Прочитано 599 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн masterkey

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Процесс перекрывает сам себя
« : 26 Февраля 2010, 16:46:51 »
Подскажите кто знает.

У меня процесс запускается из-под крона каждые 10 мин, как сделать что вторая копия процесса не запускалась пока не завершится первый процесс?

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Re: Процесс перекрывает сам себя
« Ответ #1 : 26 Февраля 2010, 16:51:40 »
Есть несколько вариантов.
1. Проверять наличие процесса в выводе ps и завершать работу, если он там есть.
2. В начале работы создавать файл (что-то типа /var/run/process.pid), ставить на него замок (http://en.wikipedia.org/wiki/File_locking#In_UNIX), при каждом запуске проверять наличие файла и наличие замка на нем. Если оба условия выполняются, завершать работу.
По окончании работы удалять файл.
В файл полезно писать pid
« Последнее редактирование: 26 Февраля 2010, 16:55:28 от wl »
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

Оффлайн athost

  • Старожил
  • *
  • Сообщений: 1897
    • Просмотр профиля
Re: Процесс перекрывает сам себя
« Ответ #2 : 26 Февраля 2010, 16:58:06 »
Есть еще ломовой вариант -- убивать процесс перед запуском нового

Пользователь решил продолжить мысль 26 Февраля 2010, 16:59:52:
Но по условиям не подходит, невнимательно читал я.
« Последнее редактирование: 26 Февраля 2010, 16:59:52 от athost »

 

Страница сгенерирована за 0.014 секунд. Запросов: 20.