0

我想知道是否有人想出一种使用 EventMachine 处理更大(500Mb+)文本文件的方法,您实际上需要在其中访问各个行。

4

1 回答 1

0

我想我找到了答案,唯一的问题是 read_chunk 在 io.gets 之后被调用,我不确定它为什么起作用:)

require 'eventmachine'
def process_line(line)
  puts line
end
EM.run do
  io = File.open('query_profiles.csv')
  read_chunk = proc do
    if line = io.gets
      process_line(line)
      EM.next_tick(read_chunk)
    else
      EM.stop
    end
  end
  EM.next_tick(read_chunk)
end
于 2013-04-26T00:30:18.883 回答