るりまサーチ

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

別のキーワード

  1. drb thread
  2. thread pending_interrupt?
  3. thread backtrace_locations
  4. tracer get_thread_no
  5. etc sc_thread_threads_max

ライブラリ

キーワード

検索結果

Thread::Mutex#lock -> self (24121.0)

mutex オブジェクトをロックします。一度に一つのス レッドだけが mutex をロックできます。既にロックされている mutex に対してロックを行おうとしたスレッドは mutex のロックが解放さ れるまで、実行が停止されます。

...す。

@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。


@see Thread::Mutex#unlock...

Thread::Mutex#unlock -> self (12144.0)

mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

...lock
# critical part
ensure
m.unlock
end

Mutex はロックしたスレッド以外からロックを開放することは出来ません。
ロックしたスレッド以外から unlock が呼ばれると ThreadError が発生します。

m = Mutex.new
m.lock
Thread
.new do
m.unlock...
...# => ThreadError
end.join

@raise ThreadError self がロックされていない場合や self をロックしたス
レッド以外から呼ばれた場合に発生します。
また、Signal.#trap に指定したハンドラ内で実行...

Thread::Mutex#sleep(timeout = nil) -> Integer (6026.0)

与えられた秒数の間ロックを解除してスリープして、実行後にまたロックします。

...する秒数を指定します。省略するとスリープし続けます。

@return スリープしていた秒数を返します。

@raise ThreadError 自身がカレントスレッドによってロックされていない場合に発生します。

[注意] 2.0 以降ではスリープ中...
...グナルを受信した場合などに実行が再
開(spurious wakeup)される場合がある点に注意してください。

//emlist[例][ruby]{
m = Mutex.new
th = Thread.new do
m.lock
m.sleep(2)
end
th.status # => "run"
sleep 1
th.status # => "sleep"
sleep 1
th.status # => false
//}...
...プし続けます。

@return タイムアウトした時は nil を、それ以外はスリープしていた秒数を返します。

@raise ThreadError 自身がカレントスレッドによってロックされていない場合に発生します。

[注意] 2.0 以降ではスリープ中で...