るりまサーチ (Ruby 2.6.0)

最速Rubyリファレンスマニュアル検索!
8件ヒット [1-8件を表示] (0.025秒)

別のキーワード

  1. conditionvariable wait
  2. conditionvariable signal
  3. conditionvariable broadcast
  4. _builtin conditionvariable
  5. conditionvariable new

ライブラリ

モジュール

キーワード

検索結果

monitor (114037.0)

スレッドの同期機構としてのモニター機能を提供するクラスです。 また同じスレッドから何度も lock できる Mutex としての機能も提供します。

スレッドの同期機構としてのモニター機能を提供するクラスです。
また同じスレッドから何度も lock できる Mutex としての機能も提供します。

モニターとは、一つの Mutex とそれに関連付けられた複数の
条件変数から構成された、スレッドの同期機構です。
Mutex と 条件変数によって同等の機能を実現することは
可能ですが、モニタの利点はライブラリがその関連を保証
していることです。

monitor は以下のような Thread::Mutex としての機能も提供します。
* lock の持ち主がスレッドである Mutex / 何度も lock できる Mutex
* l...

MonitorMixin::ConditionVariable (87097.0)

MonitorMixin と Monitor のための 条件変数クラスです。 MonitorMixin#new_cond が返します。ユーザが MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。

MonitorMixin と Monitor のための
条件変数クラスです。
MonitorMixin#new_cond が返します。ユーザが
MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。

MonitorMixin::ConditionVariable#wait(timeout = nil) -> bool (42073.0)

モニタのロックを開放し、現在のスレッドを停止します。

モニタのロックを開放し、現在のスレッドを停止します。

これを呼ぶスレッドはモニタのロックを保持している必要があります。

MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast
で起こされるまでスレッドは停止し続けます。

timeout を与えた場合は最大 timeout 秒まで停止した後にスレッドを
再開します。

実行を再開したスレッドはモニタのロックを保持した状態になります。
これによって危険領域(critical section)上で動作している
スレッドはただ一つになり...

MonitorMixin::ConditionVariable#wait_until { ... } -> () (42055.0)

モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たすまで停止します。

モニタのロックを開放し、現在のスレッドを
ブロックで指定した条件を満たすまで停止します。

MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果によってこのメソッドから抜け処理を継続するか
再びロックを開放しスレッドを停止するかを決めます。

@see MonitorMixin::ConditionVariable#wait

MonitorMixin::ConditionVariable#wait_while { ... } -> () (42055.0)

モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たしている間停止します。

モニタのロックを開放し、現在のスレッドを
ブロックで指定した条件を満たしている間停止します。

MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果によってこのメソッドから抜け処理を継続するか
再びロックを開放しスレッドを停止するかを決めます。

@raise ThreadError ロックを持っていないスレッドがこのメソッドを呼びだした場合に発生します
@see MonitorMixin::ConditionV...

絞り込み条件を変える

MonitorMixin::ConditionVariable#broadcast -> () (42019.0)

その条件変数で 待っている全てのスレッドの実行を再開します。

その条件変数で
待っている全てのスレッドの実行を再開します。

@see MonitorMixin::ConditionVariable#signal

MonitorMixin::ConditionVariable#signal -> () (42019.0)

その条件変数で待っているスレッドがあれば実行を再開させます。

その条件変数で待っているスレッドがあれば実行を再開させます。

複数のスレッドが待っている場合には1つのスレッドのみ
実行を再開します。

@see MonitorMixin::ConditionVariable#broadcast

MonitorMixin#new_cond -> MonitorMixin::ConditionVariable (33652.0)

モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。

モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。