<?print "Starting main program\n";$childs = array();for ( $count = 1; $count <= 10; $count++) { $pid = pcntl_fork(); if ( $pid == -1 ) { // Fork failed echo "Fork failed\n"; exit(1); } else if ( $pid ) { # parent #print "pid is $pid, parent $$\n"; array_push($childs, $pid); } else { # child sub1($count); exit(0); }}foreach($childs as $key => $pid) { pcntl_waitpid($pid, $status);}print "End of main program\n";function sub1 ($num) { print "started child process for $num\n"; sleep(10 - $num); print "done with child process for $num\n"; return $num;}?> |
