Posts Tagged ‘fork’

Используем fork в PHP

Thursday, January 31st, 2008

Несложный пример использования ф-ии fork в скрипте на PHP. В данном случае, с помощью fork, поддерживаем одновременно работающими 5 процессов.


<?

function run_thread()
{
$pid = pcntl_fork();

if( $pid == -1 )
die( "fork error" );

if( ! $pid )
{
// child process

echo "run process\n";
do_work();

exit( 0 );
}
}

function do_work()
{
sleep( rand( 2, 5) );
echo "done\n";
}

$numproc = 5;

for( $i = 1; $i <= $numproc; $i++ )
run_thread();

while( 1 )
{
pcntl_wait( $status );

run_thread();
}

?>