note 62099 modified in function.pcntl-wait by felipe

From: Date: Wed, 06 Aug 2008 19:05:08 +0000
Subject: note 62099 modified in function.pcntl-wait by felipe
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-143239@lists.php.net to get a copy of this message
This a simple multi process application where you can choose the maximun process that can run at the same time. This is useful when you need to limit the fork of process. When the MAXPROCESS is reached the program wait on pcntl_wait() <?php DEFINE(MAXPROCESS,25); for ($i=0;$i<100;$i++){ $pid = pcntl_fork(); if ($pid == -1) { die("could not fork"); } elseif ($pid) { echo "I'm the Parent $i\n"; $execute++; if ($execute>=MAXPROCESS){ pcntl_wait($status); $execute--; } } else { echo "I am the child, $i pid = $pid \n"; sleep(rand(1,3)); echo "Bye Bye from $i\n"; exit; } } ?> --was-- This a simple multi process application where you can choose the maximun process that can run at the same time. This is useful when you need to limit the fork of process. When the MAXPROCESS is reached the program wait on pcntl_wait() <? DEFINE(MAXPROCESS,25); for ($i=0;$i<100;$i++){ $pid = pcntl_fork(); if ($pid == -1) { die("could not fork"); } elseif ($pid) { echo "I'm the Parent $i\n"; $execute++; if ($execute>=MAXPROCESS){ pcntl_wait($status); $execute--; } } else { echo "I am the child, $i pid = $pid \n"; sleep(rand(1,3)); echo "Bye Bye from $i\n"; exit; } } ?> http://php.net/manual/en/function.pcntl-wait.php

« previous php.notes (#143239) next »