排他制御を伴わない簡単な並列処理を実行するArrayクラスのメソッド。 複数のプロセスを非同期に起動するだけの簡単な実装である。
1) Array::meach(mpcount){|value| block}
2) Array::meach(mpcount){|value,count| block}
配列の要素をブロックパラメータvalueとして、blockで与えられたコードを並列に実行する。 ブロックパラメータとしてcountを与えれば、実行中の配列要素番号(0から始まる整数)がセットされる。
mpcount 並列で実行するプロセス数。
# 10から6までの5つの要素(整数)について、2つのプロセスで並列処理する。 # 処理内容は、要素の値と配列の要素番号を表示するだけの簡単なものである。 > [10,9,8,7,6].meach(2){|value,count| > puts "#{value},#{count}" > } 10,0 9,1 8,2 7,3 6,4