我有一個循環來自外部API的數據的枚舉器。 API請求在完成循環時通知它。當統計員被允許去數據時,這很容易:如何在Ruby中「關閉」枚舉器?
def api_enum
return enum_for(:api_enum) unless block_given?
loop_on_api_calls { |thing| yield thing }
notify_api_that_i_am_done
end
但是這種情況呢?
api_enum.each do |thing|
do_stuff(thing)
break
end
的break
意味着我不會打電話給notify_api_that_i_am_done
。我怎樣才能確保notify_api_that_i_am_done
被調用?有這樣的好模式嗎?
「break notify_api_that_i_am_done」有什麼問題? – spickermann
@spickermann我真的不知道那是一件事。 – abeger