欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP多进程控制的实例

程序员文章站 2022-03-15 12:49:35
...

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 在网上看大一位网友写的PHP多进程控制的实例,分享个大家: declare(ticks=1); function sigHandler($signal) { echo "a child exited\n"; } pcntl_signal(SIGCHLD, sigHandler, false); ech

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  在网上看大一位网友写的PHP多进程控制的实例,分享个大家:

  declare(ticks=1);

  function sigHandler($signal)

  {

  echo "a child exited\n";

  }

  pcntl_signal(SIGCHLD, sigHandler, false);

  echo "this is " . posix_getpid() . PHP_EOL;

  for($i=0; $i

  {

  $pid = pcntl_fork();

  if($pid == -1)

  {

  echo 'fork failed ' . PHP_EOL;

  }

  else if($pid)

  {

  }

  else

  {

  $pid = posix_getpid();

  echo 'child ' . $pid . ' ' . time() . PHP_EOL;

  sleep(rand(2,5));

  echo 'child ' . $pid . ' done ' . time() . PHP_EOL;

  exit(0);

  }

  }

  do

  {

  $pid = pcntl_wait($status);

  echo 'child quit ' . $pid . PHP_EOL;

  }while($pid > 0);

  echo 'parent done' . PHP_EOL;

PHP多进程控制的实例