PHP pthread не кажется многопоточным

Пожалуйста, помогите, если это возможно. Я намеревался вытащить X количество строк из БД, разделив их на массивы из 20 массивов и передать их в поток для обработки одновременно.

Чтобы гарантировать, что процесс работает одновременно, я создал быстрый поток, в котором эхо выводится число потоков, тогда число равно 20. Я ожидал увидеть результаты как «1 в 1», затем «2 в 1». Вместо этого я вижу, что первый поток подсчитывается до 20, прежде чем второй поток начнет выполняться. т.е. «1 at 1» … «1 at 20», тогда только «2 at 1».

<?php class helloworld extends Thread { public function __construct($arg){ $this->arg = $arg; } public function run(){ if($this->arg){ for ($i=1;$i<=20;$i++){ echo $this->arg ." AT "; echo $i." "; sleep(1); } } } } 

?>

Тогда, чтобы назвать это, я использую

 for ($i=1;$i<=$num_threads;$i++){ $thread[$i] = new helloworld($i); if($thread[$i]->start()) $thread[$i]->join(); } 

Является ли это правильным? Или я делаю что-то глупое здесь?

благодаря

обкрадывать

Solutions Collecting From Web of "PHP pthread не кажется многопоточным"