ФорумПрограммированиеPHP для идиотов → Флаг процесса

Флаг процесса

  • arvitaly

    Сообщения: 292 Репутация: N Группа: Адекваты

    Spritz 26 января 2012 г. 9:33

    !
    Есть php скрипт.

    Хочется вначале скрипта установить какой то флаг, который 100% прекратит существование после завершения или прекращении (в том числе аварийного) выполнения.

    Причем флаг чтобы можно было считать любым другим процессом (не PHP)

    lock на файл не хотелось бы…
  • Ivan

    Сообщения: 1316 Репутация: N Группа: Адекваты

    Spritz 26 января 2012 г. 9:39, спустя 5 минут 49 секунд

    Закрывай все сокеты, соединения с бд и файловые дескрипторы, у php не за чем больше висеть
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 26 января 2012 г. 9:59, спустя 20 минут 6 секунд

    arvitaly,
    а) [man]register_shutdown_function[/man] тебе поможет. даже если кривой скрипт наебнется по ошибке, нужный кусок кода будет выполнен.
    б) я так понял (почему это?), твой скрипт это НЕ веб-страничка, а запускается из консоли? тогда ты можешь доверить создание/удаление файла .pid скрипту на bash, а уже он будет стартовать твой php-скрипт. примеры найдешь в /etc/init.d/
    ιιlllιlllι унц-унц
  • arvitaly

    Сообщения: 292 Репутация: N Группа: Адекваты

    Spritz 26 января 2012 г. 10:03, спустя 4 минуты 18 секунд

    1. Мне нужно чтобы флаг отвалился даже если PHP отвалится совсем (в смысле даже исполняемый процесс php), а не только скрипт
    2. Мне нужно кроссплатформенное решение, но походу его нет)
  • Faster

    Сообщения: 1159 Репутация: N Группа: Кто попало

    Spritz 26 января 2012 г. 11:31, спустя 1 час 27 минут 32 секунды

    PID чем плох…. ?
  • arvitaly

    Сообщения: 292 Репутация: N Группа: Адекваты

    Spritz 18 июня 2012 г. 17:32, спустя 144 дня 6 часов

    хз, а причем тут PID?
  • Josh

    Сообщения: 2008 Репутация: N Группа: Кто попало

    Spritz 3 июля 2012 г. 16:13, спустя 14 дней 22 часа 41 минуту

    $lock = fopen(TMPPATH.'/'.$name.'.run', 'w');
    if (!flock($lock, LOCK_EX | LOCK_NB))
    die();
  • arvitaly

    Сообщения: 292 Репутация: N Группа: Адекваты

    Spritz 6 июля 2012 г. 2:21, спустя 2 дня 10 часов 7 минут

    :-)

Пожалуйста, авторизуйтесь, чтобы написать комментарий!