排他制御を伴わない簡単な並列処理を実行する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