ruby的bug?

ruby的bug?

require 'md5'
time1 = Time.now
i=2000
while i<3000
File.new('c:\1.txt',"a+").puts i,MD5.hexdigest(i.php?name=to_s" onclick="tagshow(event)" class="t_tag">to_s)
i+=1
end
puts " 共耗时:#{Time.now - time1}秒"

以上代码运行后,为什么生成的1.txt不是从2000到3000的有序排列,好像是乱排的?不信大家可以试一下
文件对象放循环外面,每次puts完了,提交一次试试