">

Installs a signal handler (original) (raw)

`<?php
// tick use required
declare(ticks = 1);// signal handler function
function sig_handler($signo)
{

switch (

$signo) {
case SIGTERM:
// handle shutdown tasks
exit;
break;
case SIGHUP:
// handle restart tasks
break;
case SIGUSR1:
echo "Caught SIGUSR1...\n";
break;
default:
// handle all other signals
}

}

echo

"Installing signal handler...\n";// setup signal handlers
pcntl_signal(SIGTERM, "sig_handler");
pcntl_signal(SIGHUP, "sig_handler");
pcntl_signal(SIGUSR1, "sig_handler");// or use an object
// pcntl_signal(SIGUSR1, array($obj, "do_something"));echo"Generating signal SIGUSR1 to self...\n";// send SIGUSR1 to current process id
// posix_* functions require the posix extension
posix_kill(posix_getpid(), SIGUSR1);

echo

"Done\n";?> `