©
本文檔使用 php中文網手册 發布
(PHP 5 >= 5.3.0)
pcntl_sigwaitinfo — 等待信号
$set
[, array &$siginfo
] ) pcntl_sigwaitinfo() 函数暂停调用脚本的执行直到接收到set
参数中列出的某个信号。只要其中的一个信号已经在等待状态(比如: 通过
pcntl_sigprocmask() 函数阻塞),
函数 pcntl_sigwaitinfo() 就回立刻返回。
set
要等待的信号数组。
siginfo
siginfo
是一个输出参数,用来返回信号的信息。
以下元素会为所有信号设置:
下面元素可能会为 SIGCHLD
信号设置:
信号 SIGILL
,
SIGFPE
, SIGSEGV
和
SIGBUS
可能会被设置的元素:
可能会为 SIGPOLL
信号设置的元素:
成功时,函数 pcntl_sigwaitinfo() 返回一个信号编号。
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 );
?>