2013-05-02 5 views
-1

Я искал (искал Google) скрипт PHP, который проверяет, работает ли какой-либо конкретный процесс/функция PHP, но не может найти тот, который работает в Windows без пакетного скрипта.Проверить запуск PHP-процесса на сервере Windows

Мне в основном нужно обеспечить, чтобы работа некоторых процессов не перекрывалась, выполнялся ли сценарий с веб-страницы или из расписания Windows. Некоторые процессы должны происходить только один раз.

Я пробовал почти все здесь http://php.net/manual/en/function.getmypid.php, но они, похоже, не работают.

Любая помощь приветствуется.

+0

Запишите его начало и конец, другой процесс может проверить, работает ли он на основе журнала – 2013-05-02 00:49:11

+0

Положительный дубликат http://stackoverflow.com/questions/1129439/how-to-find-out-a-specific-process- is-still-running-in-php и http://stackoverflow.com/questions/1656350/php-check-process-id – Grmn

ответ

2
  1. Создайте файл «блокировки» при запуске скрипта.
  2. Удалите его после завершения скрипта.
  3. Не разрешайте запуск сценария, если он находит файл блокировки.

Если у вас несколько разных сценариев, просто укажите файлы блокировки по-разному.

+0

Спасибо. Так будет что-то вроде этой работы индивидуально для каждого пользователя? Поэтому скажите, что у пользователя есть 10 окон браузера с одной и той же страницей, и я хочу, чтобы сценарий запускался один раз для каждого пользователя, например, получить пользовательские сообщения. Я бы просто назвал файл блокировки на основе пользовательского сеанса (или что-то в этом роде). – puks1978

+0

Уверен, или сохраните его в своем сеансе, так как он заботится о файле для вас. –

+0

Отлично. Спасибо и реализуем это. – puks1978

Смежные вопросы