クラス
- Thread (11)
キーワード
- Interrupt (11)
- Status (11)
-
handle
_ interrupt (11) - kill (11)
検索結果
先頭5件
-
Signal
. # trap(signal) { . . . } -> String | Proc | nil (24294.0) -
指定された割り込み signal に対するハンドラとして command を登録します。 指定したシグナルが捕捉された時には例外が発生せず、代わりに command が実行されます。 ブロックを指定した場合にはブロックをハンドラとして登録します。
...合にはブロックをハンドラとして登録します。
trap は前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそれを Proc オブジェクトに変換して返します。
また何も......ます。
@param signal シグナル名を表す文字列か Symbol、またはシグナル番号を指定します。
さらに特別な値として 0 または "EXIT" が指定できます。
これは「プログラムの終了時」を表します。
@param command......シグナルハンドラとして Ruby プログラムを表す文字列か Proc オブジェクト、また次に挙げる文字列を
指定します。nil、空文字列""、"SIG_IGN" または"IGNORE" を指定した時は、
可能ならばそのシグナルを無... -
Signal
. # trap(signal , command) -> String | Proc | nil (24294.0) -
指定された割り込み signal に対するハンドラとして command を登録します。 指定したシグナルが捕捉された時には例外が発生せず、代わりに command が実行されます。 ブロックを指定した場合にはブロックをハンドラとして登録します。
...合にはブロックをハンドラとして登録します。
trap は前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそれを Proc オブジェクトに変換して返します。
また何も......ます。
@param signal シグナル名を表す文字列か Symbol、またはシグナル番号を指定します。
さらに特別な値として 0 または "EXIT" が指定できます。
これは「プログラムの終了時」を表します。
@param command......シグナルハンドラとして Ruby プログラムを表す文字列か Proc オブジェクト、また次に挙げる文字列を
指定します。nil、空文字列""、"SIG_IGN" または"IGNORE" を指定した時は、
可能ならばそのシグナルを無... -
Kernel
. # trap(signal) { . . . } -> String | Proc | nil (24244.0) -
signal で指定された割り込みにたいするハンドラとして command を登録します。Signal.#trapと同じです。
...signal で指定された割り込みにたいするハンドラとして
command を登録します。Signal.#trapと同じです。
Signal.#trapの使用を推奨します。
@param signal Signal.#trap 参照
@param command Signal.#trap 参照
@see Signal.#trap,Signal... -
Kernel
. # trap(signal , command) -> String | Proc | nil (24244.0) -
signal で指定された割り込みにたいするハンドラとして command を登録します。Signal.#trapと同じです。
...signal で指定された割り込みにたいするハンドラとして
command を登録します。Signal.#trapと同じです。
Signal.#trapの使用を推奨します。
@param signal Signal.#trap 参照
@param command Signal.#trap 参照
@see Signal.#trap,Signal... -
Thread
. handle _ interrupt(hash) { . . . } -> object (6108.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
...、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了されます)を意味します。
@param hash 例外クラスがキー、割り込みのタイミングを......に含まれます。
また、マスクされた非同期割り込みは再度有効にされるまで延期されます。本
メソッドは sigprocmask(3) に似ています。
@return ブロックの評価結果を返します。
@raise ArgumentError ブロックを指定しなかった場......le_interrupt(RuntimeError => :never) {
begin
# 安全にリソースの割り当てが可能
Thread.handle_interrupt(RuntimeError => :immediate) {
# ...
}
ensure
# 安全にリソースの解放が可能
end
}
end
Thread.pass
# ..... -
Interrupt (6008.0)
-
SIGINT シグナルを捕捉していないときに SIGINT シグナルを受け取ると発生します。 SIGINT 以外のシグナルを受信したときに発生する例外については SignalException を参照してください。
...nalException を参照してください。
使用例
=begin
#SIGINTを捕捉したい場合
Signal.trap('INT'){
print "\nINTを捕捉した。\n"
exit 1
}
=end
begin
begin
print "z"
$stdout.flush
sleep(1)
end while true
rescue Interrupt
print "... -
Process
. # kill(signal , pid , *rest) -> Integer (3108.0) -
pid で指定されたプロセスにシグナルを送ります。signal はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。 全てのシグナル送信に成功した場合、指定した pid の総数を返します。
...
pid で指定されたプロセスにシグナルを送ります。signal
はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。
全てのシグナル送信に成功した場合、指定した pid の総数を返します。
@param signal シグナルをシグ......ル(あるいはシグナル名の前に-)を指定すると、プロセスではなくプロセスグループにシグナルを送ります。
@param pid シグナルを送りたいプロセスのプロセス ID を整数で指定します。ただし、0 以下の場合は以下のような意......けたものと見なされます。
@param rest プロセス ID を整数で指定します。
@raise ArgumentError 存在しないシグナルを指定した場合に発生します。
@raise Errno::EXXX シグナル送信に失敗した場合に発生します。
@see Kernel.#trap, kill(2)... -
Process
:: Status (3062.0) -
プロセスの終了ステータスを表すクラスです。 メソッド Process.#wait2 などの返り値として使われます。
...クラスです。
メソッド Process.#wait2 などの返り値として使われます。
=== 使用例
wait を使用した例
fork { exit }
Process.wait
case
when $?.signaled?
p "child #{$?.pid} was killed by signal #{$?.termsig}"
if $?.coredump? # システムがこのス......ければ常にfalse
p "child #{$?.pid} dumped core."
end
when $?.stopped?
# 実際には Process.wait を使用しているので、ここに来ることはない
p "child #{$?.pid} was stopped by signal #{$?.stopsig}"
when $?.exited?
p "child #{$?.pid} exited normally. st......atus=#{$?.exitstatus}"
else
p "unknown status %#x" % $?.to_i
end
SIGCHLD を trap する例
trap(:SIGCHLD) {|sig|
puts "interrupted by signal #{sig} at #{caller[1]}"
# 複数の子プロセスの終了に対して1つの SIGCHLD しか届かない
# 場合があるのでル...