Bug #2741: gets with large file is slow in windoze
http://redmine.ruby-lang.org/issues/show/2741

Author: Roger Pack
Status: Open, Priority: Normal
ruby -v: ruby 1.8.8dev (2010-02-11 revision 26645) [i386-mingw32]

Reposting from a different bug report...

# 10 MB
n = 100 * 1000 * 1000
puts "writing"
File.open("foo", 'wb'){|f| f.write(" " * n) }
puts "reading"
File.open("foo", 'rb') do |io|
  io.gets
end

writing the file takes 1s, reading it takes 2000s, as it reads (in windows) in only in 4K bytes, so it is constantly resizing the string and recopying it.  In Linux it has the same problem, but reads in 64K bytes, so the problem is much less.


----------------------------------------
http://redmine.ruby-lang.org