2013-04-17 63 views
0

我有下面的代碼...限制塊循環?

parser = AppleEpf::Parser.new('tmp/incremental/itunes20130410/application') 
parser.process_rows { |app| 
    Resque.enqueue(AddApp, app) 
} 

眼下,該文件(tmp/incremental/itunes...)中有超過90,000行。出於測試目的,將process_rows塊調用限制在幾行(比如說100)是很好的。

有沒有辦法限制塊中的循環?

僅供參考,這裏的process_rows方法在寶石:

def process_rows(&block) 
    File.foreach(@filename, RECORD_SEPARATOR) do |line| 
    unless line[0].chr == COMMENT_CHAR 
     line = line.chomp(RECORD_SEPARATOR) 
     block.call(line.split(FIELD_SEPARATOR, -1)) if block_given? 
    end 
    end 
end 
+0

你可以用'yield',而不是'block.call'如果你在談論提供給方法的默認塊。 – tadman

回答

1

我認爲你正在尋找的break關鍵字。