= 5.3.0, PHP 7, PHP 8)pcntl_sigwaitinfo — 等待信號說明pcntl_sigwaitinfo(array $set, array &$siginfo = ?): intpcntl_sigwaitinfo()函數(shù)暫">
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
pcntl_sigwaitinfo — 等待信號
$set
, array &$siginfo
= ?): int
pcntl_sigwaitinfo()函數(shù)暫停調(diào)用腳本的執(zhí)行直到接收到set
參數(shù)中列出的某個信號。只要其中的一個信號已經(jīng)在等待狀態(tài)(比如: 通過
pcntl_sigprocmask()函數(shù)阻塞),
函數(shù)pcntl_sigwaitinfo()就回立刻返回。
set
要等待的信號數(shù)組。
siginfo
siginfo
是一個輸出參數(shù),用來返回信號的信息。
以下元素會為所有信號設(shè)置:
下面元素可能會為SIGCHLD
信號設(shè)置:
信號SIGILL
,
SIGFPE
, SIGSEGV
和
SIGBUS
可能會被設(shè)置的元素:
可能會為SIGPOLL
信號設(shè)置的元素:
成功時,函數(shù)pcntl_sigwaitinfo()返回一個信號編號。
示例 #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);
?>