るりまサーチ

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

別のキーワード

  1. スレッド thread
  2. スレッド spec/terminate
  3. スレッド spec/rubycmd
  4. スレッド

ライブラリ

キーワード

検索結果

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

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

...開放し、現在のスレッドを停止します。

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

MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast
で起こされるまでスレッドは停止し続けます...
...大 timeout 秒まで停止した後にスレッド
再開します。

実行を再開したスレッドはモニタのロックを保持した状態になります。
これによって危険領域(critical section)上で動作している
スレッド
はただ一つになり、排他を実現...
...での秒数。指定しなかった場合はタイムアウトしません。

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

@see MonitorMixin::ConditionVariable#wait_while, MonitorMixin::ConditionVariable#wait_until...

Thread::ConditionVariable#wait(mutex, timeout = nil) -> self (6161.0)

mutex のロックを解放し、カレントスレッドを停止します。 Thread::ConditionVariable#signalまたは、 Thread::ConditionVariable#broadcastで送られたシグナルを 受け取ると、mutexのロックを取得し、実行状態となります。

...mutex のロックを解放し、カレントスレッドを停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。

@param mutex Thread::Mutex...
...ます。この場合はシグナルを受け取
らなかった場合でも指定した秒数が経過するとスリープを終了
します。省略するとスリープし続けます。

@see Thread::ConditionVariable#signal, Thread::ConditionVariable#broadcast...
...mutex のロックを解放し、カレントスレッドを停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。

@param mutex Mutex オブ...

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

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

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

@return 常に self を返します。

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

3.tim...

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

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

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

@return 常に self を返します。

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

3.times...

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

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

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

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

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

絞り込み条件を変える

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

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

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

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

@see MonitorMixin::ConditionVariable#wait...

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

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

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

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

@see MonitorMixin::ConditionVariable#broadcast...

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

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

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

@see MonitorMixin::ConditionVariable#signal...