Поддержка функций управления процессом в РНР реализует создание процесса в стиле Unix, выполнение программы, обработку сигналов и окончание процесса. Управление процессом не должно включаться в окружении web-сервера, и могут быть неожиданные результаты, если функции управления процессом будут выполняться внутри среды web-сервера.
Эта документация призвана разъяснить общие принципы использования каждой из функций управления процессом. Детальную информацию об управлении процессом в Unix мы рекомендуем вам найти в вашей системной документации, включая fork(2), waitpid(2) и signal(2), или в исчерпывающем справочнике, таком как Advanced Programming in the UNIX Environment, автор W. Richard Stevens (Addison-Wesley).
Поддержка управления процессом в PHP по умолчанию не включена. Вам необходимо использовать опцию конфигурации --enable-pcntl при компилировании PHP, чтобы включить эту поддержку.
Примечание: в настоящее время этот модуль не работает на не-Unix платформах (Windows).
Следующий список сигналов поддерживается функциями управления процессом. См. man-страницу signal(7) вашей системной документации о поведении по умолчанию этих сигналов.
SIGFPE | SIGCONT | SIGKILL |
SIGSTOP | SIGUSR1 | SIGTSTP |
SIGHUP | SIGUSR2 | SIGTTIN |
SIGINT | SIGSEGV | SIGTTOU |
SIGQUIT | SIGPIPE | SIGURG |
SIGILL | SIGALRM | SIGXCPU |
SIGTRAP | SIGTERM | SIGXFSZ |
SIGABRT | SIGSTKFLT | SIGVTALRM |
SIGIOT | SIGCHLD | SIGPROF |
SIGBUS | SIGCLD | SIGWINCH |
SIGPOLL | SIGIO | SIGPWR |
SIGSYS |
Этот пример разветвляет процесс демона/daemon с обработчиком сигнала.