22件ヒット
[1-22件を表示]
(0.092秒)
検索結果
先頭2件
-
Interrupt (6009.0)
-
SIGINT シグナルを捕捉していないときに SIGINT シグナルを受け取ると発生します。 SIGINT 以外のシグナルを受信したときに発生する例外については SignalException を参照してください。
...IGINT シグナルを捕捉していないときに
SIGINT シグナルを受け取ると発生します。
SIGINT 以外のシグナルを受信したときに発生する例外については
SignalException を参照してください。
使用例
=begin
#SIGINTを捕捉したい場合
Si......gnal.trap('INT'){
print "\nINTを捕捉した。\n"
exit 1
}
=end
begin
begin
print "z"
$stdout.flush
sleep(1)
end while true
rescue Interrupt
print "!!\n"
exit 1
end... -
Process
:: Status (27.0) -
プロセスの終了ステータスを表すクラスです。 メソッド Process.#wait2 などの返り値として使われます。
...クラスです。
メソッド Process.#wait2 などの返り値として使われます。
=== 使用例
wait を使用した例
fork { exit }
Process.wait
case
when $?.signaled?
p "child #{$?.pid} was killed by signal #{$?.termsig}"
if $?.coredump? # システムがこのス......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. status=#{$?.exitstatus}"......o_i
end
SIGCHLD を trap する例
trap(:SIGCHLD) {|sig|
puts "interrupted by signal #{sig} at #{caller[1]}"
# 複数の子プロセスの終了に対して1つの SIGCHLD しか届かない
# 場合があるのでループさせる必要があります
while Process.waitpid(...