クラス
- Monitor (114)
-
MonitorMixin
:: ConditionVariable (60) - Socket (12)
モジュール
- MonitorMixin (100)
-
Socket
:: Constants (12)
キーワード
- ConditionVariable (12)
-
IFF
_ MONITOR (24) - Monitor (12)
- MonitorMixin (12)
- broadcast (12)
- enter (12)
- exit (12)
-
mon
_ check _ owner (6) -
mon
_ enter (18) -
mon
_ exit (18) -
mon
_ locked? (14) -
mon
_ owned? (14) -
mon
_ synchronize (18) -
mon
_ try _ enter (18) - new (12)
-
new
_ cond (18) - signal (12)
- synchronize (18)
-
try
_ enter (12) -
try
_ mon _ enter (18) - wait (12)
-
wait
_ for _ cond (6) -
wait
_ until (12) -
wait
_ while (12)
検索結果
先頭5件
-
monitor (64006.0)
-
スレッドの同期機構としてのモニター機能を提供するクラスです。 また同じスレッドから何度も lock できる Mutex としての機能も提供します。
...同等の機能を実現することは
可能ですが、モニタの利点はライブラリがその関連を保証
していることです。
monitor は以下のような Mutex としての機能も提供します。
* lock の持ち主がスレッドである Mutex / 何度も lock でき......同等の機能を実現することは
可能ですが、モニタの利点はライブラリがその関連を保証
していることです。
monitor は以下のような Thread::Mutex としての機能も提供します。
* lock の持ち主がスレッドである Mutex / 何度も lock... -
Monitor
# mon _ synchronize { . . . } -> object (26107.0) -
モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
...モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
ブロックの評価値を返り値として返します。
@see Monitor#enter... -
Monitor
# mon _ try _ enter -> bool (26102.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
Monitor
# try _ mon _ enter -> bool (26102.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
Monitor
# mon _ check _ owner -> nil (26101.0) -
MonitorMixin 用の内部メソッドです。
...MonitorMixin 用の内部メソッドです。
@raise ThreadError ロックを持っていないスレッドが呼びだした場合に発生します... -
Monitor
# mon _ locked? -> bool (26101.0) -
モニターがロックされているときに true を返します。
モニターがロックされているときに true を返します。 -
Monitor
# mon _ owned? -> bool (26101.0) -
カレントスレッドがモニターをロックしているときに true を返します。
カレントスレッドがモニターをロックしているときに true を返します。 -
Monitor
# mon _ exit -> () (23149.0) -
モニターのロックを解放します。
...ドが一つ実行を再開します。
@raise ThreadError ロックを持っていないスレッドが呼びだした場合に発生します
//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 -> () (23137.0) -
モニターをロックします。
...合、
何度でもロックできる点です。ロックした回数だけ Monitor#exit を呼ばなければモニターは
解放されません。
//emlist[例][ruby]{
require 'monitor'
mon = Monitor.new
mon.enter
mon.enter
//}
Thread::Mutex#lock ではデッドロックが起きます。
//... -
Monitor
# synchronize { . . . } -> object (23007.0) -
モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
...モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。
ブロックの評価値を返り値として返します。
@see Monitor#enter... -
Monitor
# try _ enter -> bool (23002.0) -
モニターのロックを取得しようと試みます。 ロックに成功した(ロックが開放状態だった、もしくは ロックを取得していたスレッドが自分自身であった)場合には 真を返します。
モニターのロックを取得しようと試みます。
ロックに成功した(ロックが開放状態だった、もしくは
ロックを取得していたスレッドが自分自身であった)場合には
真を返します。
ロックができなかった場合は偽を返し、実行を継続します。この場合には
スレッドはブロックしません。 -
Monitor
. new -> Monitor (20217.0) -
新しい Monitor オブジェクトを生成します。
...新しい Monitor オブジェクトを生成します。... -
Monitor
# new _ cond -> MonitorMixin :: ConditionVariable (20200.0) -
モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。
...モニターに関連付けられた、新しい MonitorMixin::ConditionVariable を生成して返します。... -
MonitorMixin
# mon _ enter -> () (20125.0) -
モニターをロックします。
...度でもロックできる点です。ロックした回数だけ mon_exit を呼ばなければモニターは
解放されません。
//emlist[例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin)
buf.mon_enter
buf.mon_enter
//}
Mutex#lock ではデッドロックが起きます。...