速度測定3
injectを使用する/しない
n = 500000 Benchmark.bm do |x| ary = Array.new(n){1} x.report{ num = 0 ary.each do |i| num += i end } x.report{ ary.inject(0){|result, item|result += item} } end
user system total real 0.940000 0.240000 1.180000 ( 1.187306) 2.000000 0.430000 2.430000 ( 2.452427)
injectの方が倍くらい遅い。
書いていて気づいたんだけど、こういうメソッドとかの速度って
YARV採用の1.9?(2.0?)になったら、全然違う結果に成るんだろうか?
それとも全体的な速度は早くなるが、個々のメソッド毎の動作速度差は変化しない?