pcntl_fork 进程

pcntl_fork 进程

  
    for($i = 0; $i< 2; $i++)
    {
       $pid = pcntl_fork();
        if(-1===$pid)
        {
            die('fork error');
        }elseif($pid>0){
            echo '父进程:'.posix_getpid().'返回的子进程:'.$pid.PHP_EOL;
        }else{
            echo '子进程:'.posix_getpid().PHP_EOL;
        }      
    }

总共会产生三个进程 ,加上原先的进程共有四个进程

 step1  A  => A1
 step2 A   => A3   A1=>A2  所以两次循环总共产生三个 进程


 子进程 保留执行的是 前一次循环的父进程的资源 。
 若更改第二次loop数据 之前产生的子进程 依然用第一次loop后的数据
posted @ 2018-06-27 20:07  haha瓜  阅读(158)  评论(0编辑  收藏  举报