(PECL ev >= 0.2.0)
EvChild::__construct — Создаёт объект наблюдатель EvChild
$pid
,$trace
,$callback
,$data
= null
,$priority
= 0
Создаёт объект наблюдатель EvChild.
Вызывает callback-функцию, когда пришло событие
изменения статуса процесса с идентификатором
pid
(или любым PID, если pid задан как 0).
Статус процесса изменяется, когда процесс завершается, либо когда
его убивают, либо, если trace равно true, когда
он остановлен или возобновлён. Другими словами, когда процесс получает сигнал
SIGCHLD, Ev
извлекает статус exit/wait для всех изменённых/зомби дочерних процессов
и вызывает callback-функцию.
Правильно устанавливать дочернего наблюдателя после того, как
EvChild завершился, но до запуска
следующей итерации событийного цикла. К примеру, сначала вызывается
fork, после чего новый дочерний процесс может выйти, и только
после этого в родителе устанавливается наблюдатель
EvChild для нового PID.
Вы можете получить доступ к статусам exit/tracing и
pid
используя свойства объекта наблюдателя
rstatus и rpid.
Количество PID-наблюдателей для каждого PID не ограничено. Все они будут вызваны.
Метод EvChild::createStopped() не стартует(не активирует) созданного наблюдателя.
pid
Ожидает изменения статуса процесса с идентификатором PID
(или любого процесса, если PID задан как 0).
trace
Если false, то активация наблюдателя происходит только при
завершении процесса.
Если true, то активация происходит также при остановке/возобновлении процесса.
callback
Смотрите Callback-функции наблюдателей.
data
Произвольные данные, связанные с наблюдателем.
priority