るりまサーチ

最速Rubyリファレンスマニュアル検索!
24件ヒット [1-24件を表示] (0.175秒)
トップページ > クエリ:t[x] > クエリ:r[x] > 種類:インスタンスメソッド[x] > クエリ:ruby[x] > クエリ:synchronize[x] > クラス:Thread::ConditionVariable[x]

別のキーワード

  1. _builtin to_r
  2. open3 pipeline_r
  3. matrix elements_to_r
  4. fileutils chmod_r
  5. fileutils chown_r

ライブラリ

キーワード

検索結果

Thread::ConditionVariable#broadcast -> self (12220.0)

状態変数を待っているスレッドをすべて再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。

...スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。

@return 常に self を返します。

//emlist[例][ruby]{
mutex = Mutex.new
cv = ConditionVariable.new
flg = true

3.times {
T
hread.start {
mutex.synchronize {
puts "a1"
while (...
...flg)
cv.wait(mutex)
end
puts "a2"
}
}
}

T
hread.start {
mutex.synchronize {
flg = false
cv.broadcast
}
}

sleep 1

# => a1
# => a1
# => a1
# => a2
# => a2
# => a2
//}...

Thread::ConditionVariable#signal -> self (6020.0)

状態変数を待っているスレッドを1つ再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。

...スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。

@return 常に self を返します。

//emlist[例][ruby]{
mutex = Mutex.new
cv = ConditionVariable.new
flg = true

3.times {
T
hread.start {
mutex.synchronize {
puts "a1"
while (...
...flg)
cv.wait(mutex)
end
puts "a2"
}
}
}

T
hread.start {
mutex.synchronize {
flg = false
cv.signal
}
}

sleep 1

# => a1
# => a1
# => a1
# => a2
//}...