我是pcnt_fork的新手,
<?php
$pid = pcntl_fork();
echo $pid;
if($pid) {
// parent process runs what is here
echo "-parent\n";
}
else {
// child process runs what is here
echo "-child\n";
} ?>
ouptut: 25347父 0 - 子
我的问题是,这里$ pid将是子进程的进程ID,即25347对吗? 然后它应该回应父母那么为什么它也给0孩子作为输出......任何人都可以解释
答案 0 :(得分:0)
答案 1 :(得分:0)
成功时,子进程的PID在父进程的执行中返回,并在子进程的执行中返回0。失败时,将在父上下文中返回-1,不会创建子进程,并引发PHP错误。
答案 2 :(得分:0)
这是fork操作后的状态:
fork()
+------+-----+
child | parent
-------------+------------
> echo $pid | > echo $pid
0 | 4650