broadcast -> self
[permalink][rdoc][edit]-
状態変数を待っているスレッドをすべて再開します。再開されたスレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。
- [RETURN]
- 常に self を返します。
mutex = Mutex.new cv = ConditionVariable.new flg = true 3.times { Thread.start { mutex.synchronize { puts "a1" while (flg) cv.wait(mutex) end puts "a2" } } } Thread.start { mutex.synchronize { flg = false cv.broadcast } } sleep 1 # => a1 # => a1 # => a1 # => a2 # => a2 # => a2