all_waits(*threads) -> ()
[permalink][rdoc][edit]all_waits(*threads) {|thread| ...} -> ()
-
指定されたスレッドすべてが終了するまで待ちます。ブロックが与えられた場合、スレッド終了時にブロックを評価します。
- [PARAM] threads:
- 終了するまでまつスレッドを一つもしくは複数指定します。
require 'thwait' threads = [] 5.times {|i| threads << Thread.new { sleep 1; p Thread.current } } ThreadsWait.all_waits(*threads) {|th| printf("end %s\n", th.inspect) } # 出力例 #=> #<Thread:0x21584 run> #=> #<Thread:0x21610 run> #=> #<Thread:0x2169c run> #=> #<Thread:0x21728 run> #=> #<Thread:0x214f8 run> #=> end #<Thread:0x21584 dead> #=> end #<Thread:0x21610 dead> #=> end #<Thread:0x2169c dead> #=> end #<Thread:0x21728 dead> #=> end #<Thread:0x214f8 dead>