牛牛在线工具

pcntl_wtermsig()

收录 8868 个 PHP 函数,含用途说明与用法示例。

pcntl_wtermsig()

获取由子进程终止所导致的信号编号

函数名:pcntl_wtermsig() 适用版本:PHP 4 >= 4.1.0, PHP 5, PHP 7 用法:pcntl_wtermsig() 函数用于获取由子进程终止所导致的信号编号。 语法:int pcntl_wtermsig ( int $status ) 参数: status:必需,由 pcntl_waitpid() 或 pcntl_wait() 函数返回的子进程状态。 返回值: 返回一个整数,代表由子进程终止所导致的信号编号。 示例: <?php $pid = pcntl_fork(); if ($pid == -1) { die('子进程创建失败'); } elseif ($pid) { // 父进程代码 pcntl_wait($status); // 等待子进程退出 if (pcntl_wifexited($status)) { echo "子进程正常退出\n"; } elseif (pcntl_wifsignaled($status)) { $termsig = pcntl_wtermsig($status); echo "子进程被信号 {$termsig} 终止\n"; } } else { // 子进程代码 sleep(3); // 子进程休眠3秒 exit(123); // 子进程退出并返回状态码123 } ?> 在上面的示例中,我们首先使用 pcntl_fork() 创建了一个子进程。然后在父进程中使用 pcntl_wait() 等待子进程退出,并通过 pcntl_wtermsig() 函数获取子进程终止所导致的信号编号。最后,根据返回的信号编号进行相应的处理。如果子进程正常退出,则输出 "子进程正常退出",如果子进程被信号终止,则输出 "子进程被信号 {信号编号} 终止"。