るりまサーチ

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

別のキーワード

  1. monitor enter
  2. monitor try_enter
  3. monitor mon_enter
  4. monitor mon_try_enter
  5. monitor try_mon_enter

ライブラリ

クラス

モジュール

キーワード

検索結果

Monitor#exit -> () (18160.0)

MonitorMixin#mon_exit の別名です。

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

enter
でロックした回数だけ exit を呼ばなければモニターは解放されません。

モニターが解放されればモニターのロック待ちになっていた
スレッドが一つ実行を再開します。

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

//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
mon.exit
mon.exit
mon.exit # => current thread not owner (ThreadError)
//}...
...モニターのロックを解放します。

enter
でロックした回数だけ exit を呼ばなければモニターは解放されません。

モニターが解放されればモニターのロック待ちになっていた
スレッドが一つ実行を再開します。

@raise ThreadErro...
...r ロックを持っていないスレッドが呼びだした場合に発生します

//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
mon.exit
mon.exit
mon.exit # => current thread not owner (ThreadError)
//}...

Monitor#enter -> () (18136.0)

MonitorMixin#mon_enter の別名です。

...orMixin#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; recu...
...何度でもロックできる点です。ロックした回数だけ Monitor#exit を呼ばなければモニターは
解放されません。

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

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

//emlist[...

Monitor#mon_exit -> () (6145.0)

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

...モニターのロックを解放します。

enter
でロックした回数だけ exit を呼ばなければモニターは解放されません。

モニターが解放されればモニターのロック待ちになっていた
スレッドが一つ実行を再開します。

@raise ThreadErro...
...r ロックを持っていないスレッドが呼びだした場合に発生します

//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
mon.exit
mon.exit
mon.exit # => current thread not owner (ThreadError)
//}...

Monitor#mon_enter -> () (6121.0)

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

...何度でもロックできる点です。ロックした回数だけ Monitor#exit を呼ばなければモニターは
解放されません。

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

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

//emlist[...

MonitorMixin#mon_enter -> () (6120.0)

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

...もロックできる点です。ロックした回数だけ mon_exit を呼ばなければモニターは
解放されません。

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

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

//emli...

絞り込み条件を変える

MonitorMixin#mon_exit -> () (6114.0)

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

...モニターのロックを解放します。

mon_enter でロックした回数だけ mon_exit
呼ばなければモニターは解放されません。

モニターが解放されればモニターのロック待ちになっていた
スレッドが一つ実行を再開します。

@raise...

IRB::ExtendCommand::Help#execute(*names) -> nil (19.0)

RI から Ruby のドキュメントを参照します。

...力する事で irb のプロンプトに戻る事ができま
す。

irb(main):001:0> help

Enter
the method name you want to look up.
You can use tab to autocomplete.
Enter
a blank line to exit.

>> String#match
String#match

(from ruby core)
--------------------------------------...