ライブラリ
- ビルトイン (63)
- etc (11)
- monitor (11)
- open3 (44)
- shell (6)
-
shell
/ process-controller (6) -
shell
/ system-command (6) - thread (6)
-
webrick
/ httpproxy (11) -
webrick
/ httpserver (11)
クラス
-
MonitorMixin
:: ConditionVariable (11) - Mutex (2)
- Shell (6)
-
Shell
:: ProcessController (6) -
Shell
:: SystemCommand (6) - Thread (14)
-
Thread
:: ConditionVariable (22) -
Thread
:: Mutex (9)
キーワード
- ConditionVariable (11)
- HTTPProxyServer (11)
- HTTPServer (11)
-
NEWS for Ruby 2
. 0 . 0 (11) -
NEWS for Ruby 3
. 0 . 0 (4) -
SC
_ REALTIME _ SIGNALS (11) -
handle
_ interrupt (11) -
ignore
_ deadlock= (3) - kill (12)
-
kill
_ job (6) - list (11)
-
pipeline
_ r (22) -
pipeline
_ start (22) -
rb
_ thread _ signal _ raise (11) -
ruby 1
. 8 . 4 feature (11) - synchronize (11)
- wait (11)
-
wait
_ while (11)
検索結果
先頭5件
-
Thread
:: ConditionVariable # signal -> self (27207.0) -
状態変数を待っているスレッドを1つ再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。
...ッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。
@return 常に self を返します。
//emlist[例][ruby]{
mutex = Mutex.new
cv = ConditionVariable.new
flg = true
3.times {
Thread.start {
mutex.synchronize {
puts "a1"
while (flg)......cv.wait(mutex)
end
puts "a2"
}
}
}
Thread.start {
mutex.synchronize {
flg = false
cv.signal
}
}
sleep 1
# => a1
# => a1
# => a1
# => a2
//}... -
void rb
_ thread _ signal _ raise(char *sig) (18300.0) -
-
MonitorMixin
:: ConditionVariable # wait _ while { . . . } -> () (18206.0) -
モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たしている間停止します。
...開放し、現在のスレッドを
ブロックで指定した条件を満たしている間停止します。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果......このメソッドから抜け処理を継続するか
再びロックを開放しスレッドを停止するかを決めます。
@raise ThreadError ロックを持っていないスレッドがこのメソッドを呼びだした場合に発生します
@see MonitorMixin::ConditionVariable#wait... -
Signal
. # list -> Hash (15212.0) -
シグナル名とシグナル番号を対応づけた Hash オブジェクトを返し ます。
...シグナル名とシグナル番号を対応づけた Hash オブジェクトを返し
ます。
例:
p Signal.list # => {"WINCH"=>28, "PROF"=>27, ...}
@see Signal.#signame... -
Thread
:: Mutex # synchronize { . . . } -> object (15206.0) -
mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。
...します。
@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
//emlist[例][ruby]{
m......= Mutex.new
result = m.synchronize do
m.locked? # => true
# critical part
"result"
end
m.locked? # => false
result # => "result"
//}... -
Thread
. handle _ interrupt(hash) { . . . } -> object (12306.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
...込み」とは、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了されます)を意味します。
@param hash 例外クラスがキー、割り込みのタ......イミングを指定する
Symbol が値の Hash を指定します。
値の内容は以下のいずれかです。
: :immediate
すぐに割り込みます。
: :on_blocking
ブロッキング処理(後述)の間は割り込みが発生します。
: :never
ま......れた非同期割り込みは再度有効にされるまで延期されます。本
メソッドは sigprocmask(3) に似ています。
@return ブロックの評価結果を返します。
@raise ArgumentError ブロックを指定しなかった場合に発生します。
=== 注意
非同... -
Mutex
# synchronize { . . . } -> object (12206.0) -
mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。
...します。
@raise ThreadError self 既にカレントスレッドにロックされている場合に発
生します。
また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。
//emlist[例][ruby]{
m......= Mutex.new
result = m.synchronize do
m.locked? # => true
# critical part
"result"
end
m.locked? # => false
result # => "result"
//}... -
Thread
:: ConditionVariable # wait(mutex , timeout = nil) -> self (12122.0) -
mutex のロックを解放し、カレントスレッドを停止します。 Thread::ConditionVariable#signalまたは、 Thread::ConditionVariable#broadcastで送られたシグナルを 受け取ると、mutexのロックを取得し、実行状態となります。
...します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。
@param mutex Thread::Mutex オブジェクトを指定します。
@param timeout スリー......ます。この場合はシグナルを受け取
らなかった場合でも指定した秒数が経過するとスリープを終了
します。省略するとスリープし続けます。
@see Thread::ConditionVariable#signal, Thread::ConditionVariable#broadcast......停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。
@param mutex Mutex オブジェクトを指定します。
@param timeout スリープ... -
Shell
# kill(signal , job) -> Integer (9207.0) -
@todo
...@todo
ジョブにシグナルを送ります。
@param signal
@param job... -
Shell
:: ProcessController # kill _ job(signal , command) -> Integer (9207.0) -
指定されたコマンドにシグナルを送ります。
...指定されたコマンドにシグナルを送ります。
@param signal シグナルを整数かその名前の文字列で指定します。
負の値を持つシグナル(あるいはシグナル名の前に-)を指定すると、
プロセスではなくプロセ......スグループにシグナルを送ります。
@param command コマンドを指定します。
@see Process.#kill... -
Shell
:: SystemCommand # kill(signal) -> Integer (9207.0) -
自身のプロセスにシグナルを送ります。
...am signal シグナルを整数かその名前の文字列で指定します。
負の値を持つシグナル(あるいはシグナル名の前に-)を指定すると、
プロセスではなくプロセスグループにシグナルを送ります。
@see Process.#kil... -
Etc
:: SC _ REALTIME _ SIGNALS -> Integer (9201.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。