我在我的ruby構建腳本中有一個循環,它遍歷每個項目並調用msbuild並執行各種其他位,如縮小css/js。在ruby中的並行性
每個循環迭代都是獨立於其他循環的,所以我想將它們相互混淆。
我該怎麼做?
我已經試過:
myarray.each{|item|
Thread.start {
# do stuff
}
}
puts "foo"
但紅寶石只是似乎馬上退出(版畫 「富」)。也就是說,它運行在循環,啓動線程的負載,但each
,紅寶石退出殺死其他線程:(
我知道我可以做thread.join
後,因爲那裏有什麼,但如果我這樣做內環路那麼它不再平行。
我缺少什麼?
我所知道的http://peach.rubyforge.org/,但使用的是我得到的各種怪異的行爲,看起來像變量範圍的問題,我不知道如何解決:(
編輯:如果我可以在放入「foo」之前等待所有子線程執行,或至少主要的ruby線程退出,那將會很有用。這可能嗎?
感謝
線程很爛! :) – fl00r 2012-04-19 09:44:38
是的,我不能說我真的很急於在Ruby應用程序中使用線程。 – Russell 2012-04-19 09:46:08