(PHP 8 >= 8.1.0)
pcntl_rfork — 操作进程资源
flags
flags
参数决定调用进程(父进程)的哪些资源被新进程(子进程)共享或初始化为它们的默认值。
flags
是以下子集的逻辑或运算
signal
信号编号。
成功时,子进程的 PID 在父进程的执行线程中返回,而子进程的执行线程中返回 0
。失败时,父进程的上下文中将返回 -1
,不会创建子进程,并且会引发 PHP 错误。
示例 #1 pcntl_rfork() 示例
<?php
$pid = pcntl_rfork(RFNOWAIT|RFTSIGZMB, SIGUSR1);
if ($pid > 0) {
// 这是父进程。
var_dump($pid);
} else {
// 这是子进程。
var_dump($pid);
sleep(2); // 由于子进程不等待,因此我们看到它的“pid”
}
?>
以上示例将输出类似以下内容
int(77093) int(0)
注意:
此函数仅在 BSD 系统上可用。