English | 简体中文 | 繁體中文
查询

pcntl_signal_dispatch()函数—用法及示例

「 调用等待信号的处理器 」


函数名称:pcntl_signal_dispatch()

函数描述:pcntl_signal_dispatch() 函数调用等待信号的处理器。

适用版本:该函数在PHP 4 >= 4.3.0, PHP 5, PHP 7中可用。

用法: pcntl_signal_dispatch(): void

示例:

<?php
// 定义信号处理函数
function signalHandler($signal)
{
    echo "接收到信号:{$signal}\n";
}

// 安装信号处理器
pcntl_signal(SIGINT, 'signalHandler');

// 执行等待信号处理器
pcntl_signal_dispatch();

// 发送信号
posix_kill(posix_getpid(), SIGINT);

// 执行等待信号处理器
pcntl_signal_dispatch();
?>

输出结果:

接收到信号:2

解释: pcntl_signal_dispatch() 函数用于调用等待信号的处理器。在示例中,我们首先定义了一个名为 signalHandler 的信号处理函数,然后通过 pcntl_signal() 函数将 SIGINT 信号与 signalHandler 函数关联起来。接下来,使用 posix_kill() 函数向当前进程发送 SIGINT 信号。最后,通过调用 pcntl_signal_dispatch() 函数来执行等待信号处理器。在示例中,我们收到了一个信号,输出结果显示 "接收到信号:2",其中 2 代表 SIGINT 信号的编号。

补充纠错
下一个函数: pcntl_signal()函数
热门PHP函数
分享链接