るりまサーチ

最速Rubyリファレンスマニュアル検索!
68件ヒット [1-68件を表示] (0.038秒)
トップページ > クエリ:lock[x] > クエリ:Monitor[x]

別のキーワード

  1. mutex_m lock
  2. net/http lock
  3. mutex_m try_lock
  4. mutex_m mu_lock
  5. mutex_m mu_try_lock

ライブラリ

クラス

モジュール

キーワード

検索結果

Monitor (38040.0)

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

...レッドから何度も lock できる Mutex としての機能も提供します。

Monitor
Mixin を include し、いくつかの別名を定義したクラスです。

=== 例

//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'

buf = []
mon = Monitor.new
empty_cond = mon.new...
...]{
require 'monitor'
mon = Monitor.new
mon.synchronize {
mon.synchronize {
}
}
//}

Thread::Mutex ではデッドロックになります。

//emlist[Mutex でデッドロックになる例][ruby]{
mx = Mutex.new
mx.synchronize {
mx.synchronize {
}
}
# => deadlock; recursive locking (Thread...

Monitor#mon_locked? -> bool (27100.0)

モニターがロックされているときに true を返します。

モニターがロックされているときに true を返します。

Monitor#enter -> () (21048.0)

モニターをロックします。

...MonitorMixin#mon_enter の別名です。

Thread::Mutex#lock に相当します。
Thread::Mutex#lock と違うのは現在のモニターの所有者が現在実行されているスレッドである場合、
何度でもロックできる点です。ロックした回数だけ Monitor#exit を...
...されません。

//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
//}

Thread::Mutex#lock ではデッドロックが起きます。

//emlist[Mutex でデッドロックする例][ruby]{
m = Mutex.new
m.lock
m.lock # => deadlock; recursive locking (ThreadError)
//}...
...は待ちます。

Thread::Mutex#lock に相当します。
Thread::Mutex#lock と違うのは現在のモニターの所有者が現在実行されているスレッドである場合、
何度でもロックできる点です。ロックした回数だけ Monitor#exit を呼ばなければモニ...

Monitor#mon_enter -> () (21048.0)

モニターをロックします。

...は待ちます。

Thread::Mutex#lock に相当します。
Thread::Mutex#lock と違うのは現在のモニターの所有者が現在実行されているスレッドである場合、
何度でもロックできる点です。ロックした回数だけ Monitor#exit を呼ばなければモニ...
...されません。

//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
//}

Thread::Mutex#lock ではデッドロックが起きます。

//emlist[Mutex でデッドロックする例][ruby]{
m = Mutex.new
m.lock
m.lock # => deadlock; recursive locking (ThreadError)
//}...

MonitorMixin#mon_locked? -> bool (9100.0)

モニターがロックされているときに true を返します。

モニターがロックされているときに true を返します。

絞り込み条件を変える

monitor (6064.0)

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

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

モニターとは、一つの Mutex とそれに関連付けられた複数の
条件変数から構成さ...
...ことです。

monitor
は以下のような Mutex としての機能も提供します。
* lock の持ち主がスレッドである Mutex / 何度も lock できる Mutex
* lock したスレッドを Mutex 側が覚えていて
* そのスレッドがもう一度 lock しようとし...
...てもブロックしない
* synchronize は lock していなかったら通常どおり、
自分が lock していたら ただ yield するだけ (lock/unlockもしない)
* unlock はそのスレッドだけができる

30447 より。

よりプリミティブな同期機構と...
...とです。

monitor
は以下のような Thread::Mutex としての機能も提供します。
* lock の持ち主がスレッドである Mutex / 何度も lock できる Mutex
* lock したスレッドを Mutex 側が覚えていて
* そのスレッドがもう一度 lock しよう...
...としてもブロックしない
* synchronize は lock していなかったら通常どおり、
自分が lock していたら ただ yield するだけ (lock/unlockもしない)
* unlock はそのスレッドだけができる

30447 より。

よりプリミティブな同期機...

MonitorMixin#mon_enter -> () (3036.0)

モニターをロックします。

...ターがロックされている場合は、ロックが開放されるまで
そのスレッドは待ちます。

Thread::Mutex#lock に相当します。
Mutex#lock と違うのは現在のモニターの所有者が現在実行されているスレッドである場合、
何度でもロック...
...

//emlist[例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin)
buf.mon_enter
buf.mon_enter
//}

Mutex#lock ではデッドロックが起きます。

//emlist[Mutex でデッドロックする例][ruby]{
m = Mutex.new
m.lock
m.lock # => deadlock; recursive locking (ThreadError)
//}...