ライブラリ
- monitor (97)
クラス
- Monitor (31)
モジュール
- MonitorMixin (66)
キーワード
- enter (11)
-
mon
_ exit (11) -
mon
_ synchronize (11) -
mon
_ try _ enter (16) - synchronize (11)
-
try
_ enter (5) -
try
_ mon _ enter (16)
検索結果
先頭5件
-
MonitorMixin
# mon _ enter -> () (24214.0) -
モニターをロックします。
...mon_exit を呼ばなければモニターは
解放されません。
//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)
//}... -
Monitor
# mon _ enter -> () (21202.0) -
モニターをロックします。
...け 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)
//}... -
Monitor
# try _ mon _ enter -> bool (9202.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
MonitorMixin
# try _ mon _ enter -> bool (9202.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
MonitorMixin
# mon _ synchronize { . . . } -> object (9107.0) -
モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
...モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
ブロックの評価値を返り値として返します。
@see MonitorMixin#mon_enter... -
MonitorMixin
# synchronize { . . . } -> object (9107.0) -
モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
...モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
ブロックの評価値を返り値として返します。
@see MonitorMixin#mon_enter... -
Monitor
# enter -> () (6117.0) -
MonitorMixin#mon_enter の別名です。
...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)
//}... -
MonitorMixin
# mon _ exit -> () (6107.0) -
モニターのロックを解放します。
...モニターのロックを解放します。
mon_enter でロックした回数だけ mon_exit を
呼ばなければモニターは解放されません。
モニターが解放されればモニターのロック待ちになっていた
スレッドが一つ実行を再開します。
@raise... -
Monitor
# enter -> () (6102.0) -
モニターをロックします。
...け 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)
//}... -
Monitor
# mon _ try _ enter -> bool (6102.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
Monitor
# try _ enter -> bool (6102.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
MonitorMixin
# mon _ try _ enter -> bool (6102.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。