|
(PHP 4 >= 4.1.0)
pcntl_signal - инсталирует обработчик сигнала.
Описание
bool pcntl_signal (int signo, mixed handler)
Функция pcntl_signal() устанавливает новый обработчик сигнала для сигнала
signo
.
Обработчик сигнала устанавливается в
handler
, который может быть именем функции, созданной пользователем, или одной из двух
глобальных констант: SIG_IGN или SIG_DFL.
pcntl_signal() возвращает
TRUE
при успехе,
FALSE
при неудаче.
Пример 1. pcntl_signal()
<?php
// функция обработчика сигнала
function sig_handler($signo) {
switch($signo) {
case SIGTERM:
// обработка задач shutdown
exit;
break;
case SIGHUP:
// обработка задач restart
break;
case SIGUSR1:
print "Caught SIGUSR1...\n";
break;
default:
// обработка всех других сигналов
}
}
print "Installing signal handler...\n";
// установка обработчиков сигналов
pcntl_signal(SIGTERM, "sig_handler");
pcntl_signal(SIGHUP, "sig_handler");
pcntl_signal(SIGUSR1, "sig_handler");
print "Generating signal SIGTERM to self...\n";
// отправка SIGUSR1 текущему process id
posix_kill(posix_getpid(), SIGUSR1);
print "Done\n"
?>
|
|
См. также
pcntl_fork()
и
pcntl_waitpid()
.
|
|