pcntl_sigwaitinfo
(PHP 5 >= 5.3.0, PHP 7)
pcntl_sigwaitinfo — Waits for signals
Description
int pcntl_sigwaitinfo ( array $set [, array &$siginfo ] )
The pcntl_sigwaitinfo() function suspends execution of the calling script until one of the signals given in set
are delivered. If one of the signal is already pending (e.g. blocked by pcntl_sigprocmask()), pcntl_sigwaitinfo() will return immediately.
Parameters
set
Array of signals to wait for.
siginfo
The siginfo
parameter is set to an array containing informations about the signal.
The following elements are set for all signals:
- signo: Signal number
- errno: An error number
- code: Signal code
The following elements may be set for the SIGCHLD
signal:
- status: Exit value or signal
- utime: User time consumed
- stime: System time consumed
- pid: Sending process ID
- uid: Real user ID of sending process
The following elements may be set for the SIGILL
, SIGFPE
, SIGSEGV
and SIGBUS
signals:
- addr: Memory location which caused fault The following element may be set for the
SIGPOLL
signal:
- band: Band event
- fd: File descriptor number
Return Values
On success, pcntl_sigwaitinfo() returns a signal number.
Examples
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);
?>
See Also
- pcntl_sigprocmask() - Sets and retrieves blocked signals
- pcntl_sigtimedwait() - Waits for signals, with a timeout
← pcntl_sigtimedwait
pcntl_strerror →
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com