(PHP 5 >= 5.3.0, PHP 7, PHP 8)
pcntl_sigwaitinfo — Waits for signals
$signals
, array &$info
= []): int|false
The pcntl_sigwaitinfo() function suspends execution of the
calling script until one of the signals given in signals
are delivered. If one of the signal is already pending (e.g. blocked by
pcntl_sigprocmask()),
pcntl_sigwaitinfo() will return immediately.
signals
Array of signals to wait for.
info
The info
parameter is set to an array containing
information about the signal.
The following elements are set for all signals:
The following elements may be set for the SIGCHLD
signal:
The following elements may be set for the SIGILL
,
SIGFPE
, SIGSEGV
and
SIGBUS
signals:
The following element may be set for the SIGPOLL
signal:
Returns a signal number on success, or false
on failure.
Example #1 pcntl_sigwaitinfo() example
<?php
echo "Blocking SIGHUP signal\n";
pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP));
echo "Sending SIGHUP to self\n";
posix_kill(posix_getpid(), SIGHUP);
echo "Waiting for signals\n";
$info = array();
pcntl_sigwaitinfo(array(SIGHUP), $info);
?>