説明はすでに提供されているので、コードを直接入れます。あなたが求めたすべては、スレッドで達成できます。
require_once( 'Thread.php' );
// test to see if threading is available
if( ! Thread::available() )
{
die( 'Threads not supported' );
}
// function to be ran on separate threads
function paralel( $_limit, $_name )
{
for ( $index = 0; $index < $_limit; $index++ )
{
echo 'Now running thread ' . $_name . PHP_EOL;
sleep( 1 );
}
}
// create 2 thread objects
$t1 = new Thread( 'paralel' );
$t2 = new Thread( 'paralel' );
// start them
$t1->start( 10, 't1' );
$t2->start( 10, 't2' );
// keep the program running until the threads finish
while( $t1->isAlive() && $t2->isAlive() )
{
}
PHP 自体はスレッドをサポートしていないことに注意してください。詳細情報はこちらhttp://blog.motane.lu/2009/01/02/multithreading-in-php/
この回答に従うこともできます。これは、PHP と Threads についてのコード例についても説明しています。
スレッドは主にプロセスを異なるスレッドに分割して高速化するために使用され、サイトのトラフィックが多い場合、OS 自体が CPU の異なるコアでプロセスを管理するため、私は個人的には PHP スレッド化を使用しません。したがって、PHP スレッド化について心配する必要はないと思います。これが、PHP チームがそれに焦点を当てていない理由かもしれません (これは私の考えです)。