現在、このスクリプトが完了するまでに約 6 分かかります。
ここに私のスニペットがあります:
$items = getSomeItems();
$results = array();
foreach ($items as $index => $value) {
$valueA = getValueA($value); // 2 minute process.
$valueB = getValueB($value); // 2 minute process.
$valueC = getValueC($value); // 2 minute process.
$results[] = array('a' => $valueA, 'b' => $valueB, 'c' => $valueC, )
}
return $results;
この foreach ループを並列化する方法はありますか? 配列が に追加される順序は気にしません$results
。とにかく SQL で順序付けます。
私は何かをすることができますか?
parallel-foreach ($items as $index => $value) {
$valueA = getValueA($value); // 2 minute process.
$valueB = getValueB($value); // 2 minute process.
$valueC = getValueC($value); // 2 minute process.
$results[] = array('a' => $valueA, 'b' => $valueB, 'c' => $valueC, )
}
C# のParallel.Foreachにも同様の考え方があります。PHPで似たようなものを探しています。