3
我正在從(降序)時間有序庫中下載圖像。我想停下來,當我們看到已經停下來的照片時。從線程循環中突破
require 'thread/pool'
def getimg(uri)
#...
if File.exist? filename
raise "Already done." # something like this
end
#...
end
pool = Thread.pool(4)
thumbs.each do |a|
pool.process {
getimg(URI(a.attr('href')))
}
end
這聽起來不錯,但似乎並不奏效。我試過修剪!太。 – Kambus 2014-08-30 14:17:36
@Kambus,我嘗試了這一點,它按預期工作。這是我的實驗:http://pastebin.com/fgSw6BZT – falsetru 2014-08-30 14:19:03
嗯,這很奇怪!我必須在File.exist之前獲得一個頁面才能知道文件名,並且不管pool.shutdown如何都會運行。嘗試在文件檢查之前添加pri:http://pastebin.com/i7mb3PXQ – Kambus 2014-08-30 14:47:19