ライブラリ
- ビルトイン (96)
- monitor (60)
- shell (6)
-
shell
/ process-controller (6) -
shell
/ system-command (6) - thread (4)
クラス
-
MonitorMixin
:: ConditionVariable (60) - Mutex (6)
-
Process
:: Status (12) - Shell (6)
-
Shell
:: ProcessController (6) -
Shell
:: SystemCommand (6) - SignalException (24)
- Thread (4)
-
Thread
:: ConditionVariable (24) -
Thread
:: Mutex (30)
キーワード
- broadcast (12)
-
ignore
_ deadlock= (4) - kill (12)
-
kill
_ job (6) - lock (12)
- signaled? (12)
- signm (12)
- signo (12)
- synchronize (12)
- unlock (12)
- wait (24)
-
wait
_ until (12) -
wait
_ while (12)
検索結果
先頭5件
-
MonitorMixin
:: ConditionVariable # broadcast -> () (7.0) -
その条件変数で 待っている全てのスレッドの実行を再開します。
...その条件変数で
待っている全てのスレッドの実行を再開します。
@see MonitorMixin::ConditionVariable#signal... -
MonitorMixin
:: ConditionVariable # wait(timeout = nil) -> bool (7.0) -
モニタのロックを開放し、現在のスレッドを停止します。
...止します。
これを呼ぶスレッドはモニタのロックを保持している必要があります。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast
で起こされるまでスレッドは停止し続けます。
timeout を与えた場合は最大... -
MonitorMixin
:: ConditionVariable # wait _ until { . . . } -> () (7.0) -
モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たすまで停止します。
...クを開放し、現在のスレッドを
ブロックで指定した条件を満たすまで停止します。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果... -
MonitorMixin
:: ConditionVariable # wait _ while { . . . } -> () (7.0) -
モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たしている間停止します。
...開放し、現在のスレッドを
ブロックで指定した条件を満たしている間停止します。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果... -
Mutex
# lock -> self (7.0) -
mutex オブジェクトをロックします。一度に一つのス レッドだけが mutex をロックできます。既にロックされている mutex に対してロックを行おうとしたスレッドは mutex のロックが解放さ れるまで、実行が停止されます。
...す。
@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
@see Thread::Mutex#unlock... -
Mutex
# synchronize { . . . } -> object (7.0) -
mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。
...eadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
//emlist[例][ruby]{
m = Mutex.new
result = m.... -
Mutex
# unlock -> self (7.0) -
mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。
...ThreadError self がロックされていない場合や self をロックしたス
レッド以外から呼ばれた場合に発生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。... -
Thread
# ignore _ deadlock=(bool) (7.0) -
デッドロック検知を無視する機能をon/offします。デフォルト値はfalseです。
...。
trueを渡すとデッドロックを検知しなくなります。
//emlist[][ruby]{
Thread.ignore_deadlock = true
queue = Thread::Queue.new
trap(:SIGUSR1){queue.push "Received signal"}
# ignore_deadlockがfalseだとエラーが発生する
puts queue.pop
//}
@see Thread#ignore_deadlock... -
Thread
:: Mutex # lock -> self (7.0) -
mutex オブジェクトをロックします。一度に一つのス レッドだけが mutex をロックできます。既にロックされている mutex に対してロックを行おうとしたスレッドは mutex のロックが解放さ れるまで、実行が停止されます。
...す。
@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
@see Thread::Mutex#unlock... -
Thread
:: Mutex # synchronize { . . . } -> object (7.0) -
mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。
...eadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
//emlist[例][ruby]{
m = Mutex.new
result = m.... -
Thread
:: Mutex # unlock -> self (7.0) -
mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。
...ThreadError self がロックされていない場合や self をロックしたス
レッド以外から呼ばれた場合に発生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。...