当前位置:首页 > PHP教程 > php应用 > 列表

PHP实现的多进程控制demo示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-06 16:49:41 浏览: 评论:0 

本文实例讲述了PHP实现的多进程控制,分享给大家供大家参考,具体如下:

自己写了个多进程控制的框架代码,留着备查。

  1. declare(ticks=1); 
  2. function sigHandler($signal) 
  3. { 
  4.   echo "a child exited\n"; 
  5. } 
  6. pcntl_signal(SIGCHLD, sigHandler, false); 
  7. echo "this is " . posix_getpid() . PHP_EOL; 
  8. for($i=0; $i<3; $i++) 
  9. { 
  10.   $pid = pcntl_fork(); 
  11.   if($pid == -1) 
  12.   { 
  13.     echo 'fork failed ' . PHP_EOL; 
  14.   } 
  15.   else if($pid) 
  16.   { 
  17.   } 
  18.   else 
  19.   { 
  20.     $pid = posix_getpid(); 
  21.     echo 'child ' . $pid . ' ' . time() . PHP_EOL; 
  22.     sleep(rand(2,5)); 
  23.     echo 'child ' . $pid . ' done ' . time() . PHP_EOL; 
  24.     exit(0); 
  25.   } 
  26. } 
  27. do 
  28. { 
  29.   $pid = pcntl_wait($status); 
  30.   echo 'child quit ' . $pid . PHP_EOL; 
  31. }while($pid > 0); 
  32. echo 'parent done' . PHP_EOL;

Tags: PHP多进程 demo

分享到: