0
Thread.abort_on_exception = true
threads = 4.times.map do |number|
Thread.new(number) do |i|
raise "Boom!" if i == 1
print "#{i}\n"
end
end
puts "Waiting"
threads.each {|t| t.join }
puts "Done"
產生0,2然後出錯。我不明白爲什麼每次輸出0時輸出2,然後退出?爲什麼這個Ruby線程代碼輸出2?