Php/docs/function.pcntl-fork
来自菜鸟教程
pcntl_fork
(PHP 4 >= 4.1.0, PHP 5, PHP 7)
pcntl_fork — 在当前进程当前位置产生分支(子进程)。译注:fork是创建了一个子进程,父进程和子进程 都从fork的位置开始向下继续执行,不同的是父进程执行过程中,得到的fork返回值为子进程 号,而子进程得到的是0。
说明
pcntl_fork ( ) : int
pcntl_fork()函数创建一个子进程,这个子进程仅PID(进程号) 和PPID(父进程号)与其父进程不同。fork怎样在您的系统工作的详细信息请查阅您的系统 的fork(2)手册。
返回值
成功时,在父进程执行线程内返回产生的子进程的PID,在子进程执行线程内返回0。失败时,在 父进程上下文返回-1,不会创建子进程,并且会引发一个PHP错误。
范例
Example #1 pcntl_fork() 示例
<?php$pid = pcntl_fork();//父进程和子进程都会执行下面代码if ($pid == -1) { //错误处理:创建子进程失败时返回-1. die('could not fork');} else if ($pid) { //父进程会得到子进程号,所以这里是父进程执行的逻辑 pcntl_wait($status); //等待子进程中断,防止子进程成为僵尸进程。} else { //子进程得到的$pid为0, 所以这里是子进程执行的逻辑。}?>