このプログラムの実行結果が毎回違うのですが、
これって正しいことですか?
毎回同じ結果になることを期待していたのですが…
Fedora Core 4/ruby-1.8.5-p12です。

thread_ary = []
n = 0
10000.times do |i|
thread_ary << Thread.new(i) { |i2| n += i2 }
end

thread_ary.each do |th|
th.join
end

p n