るりまサーチ

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

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

種類

モジュール

検索結果

Signal.#trap(signal) { ... } -> String | Proc | nil (26176.0)

指定された割り込み signal に対するハンドラとして command を登録します。 指定したシグナルが捕捉された時には例外が発生せず、代わりに command が実行されます。 ブロックを指定した場合にはブロックをハンドラとして登録します。

...わりに command が実行されます。
ブロックを指定した場合にはブロックをハンドラとして登録します。

trap
は前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそ...
...Signal.trap(:INT, "p true") # => "DEFAULT"
Signal.trap(:INT) { p false } # => "p true"
Signal.trap(:INT, proc{ p nil }) # => #<Proc:0x8e45ae0@-:2>
Signal.trap(:INT, "SIG_IGN") # => #<Proc:0x8e45914@-:3>
Signal.trap(:INT, "DEFAULT") # => "IGNORE"
Signal.trap(:INT, "E...
...XIT") # => "DEFAULT"
Signal.trap(:INT, nil) # => "EXIT"

//emlist[例][ruby]{
Signal.trap(0, proc { puts "Terminating: #{$$}" })
Signal.trap("CLD") { puts "Child died" }
fork && Process.wait

# => Terminating: 13939
# => Child died
# => Terminating: 13907
//}

@see spec/termina...

Signal.#trap(signal, command) -> String | Proc | nil (26176.0)

指定された割り込み signal に対するハンドラとして command を登録します。 指定したシグナルが捕捉された時には例外が発生せず、代わりに command が実行されます。 ブロックを指定した場合にはブロックをハンドラとして登録します。

...わりに command が実行されます。
ブロックを指定した場合にはブロックをハンドラとして登録します。

trap
は前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそ...
...Signal.trap(:INT, "p true") # => "DEFAULT"
Signal.trap(:INT) { p false } # => "p true"
Signal.trap(:INT, proc{ p nil }) # => #<Proc:0x8e45ae0@-:2>
Signal.trap(:INT, "SIG_IGN") # => #<Proc:0x8e45914@-:3>
Signal.trap(:INT, "DEFAULT") # => "IGNORE"
Signal.trap(:INT, "E...
...XIT") # => "DEFAULT"
Signal.trap(:INT, nil) # => "EXIT"

//emlist[例][ruby]{
Signal.trap(0, proc { puts "Terminating: #{$$}" })
Signal.trap("CLD") { puts "Child died" }
fork && Process.wait

# => Terminating: 13939
# => Child died
# => Terminating: 13907
//}

@see spec/termina...

Process::Status (8048.0)

プロセスの終了ステータスを表すクラスです。 メソッド Process.#wait2 などの返り値として使われます。

...プロセスの終了ステータスを表すクラスです。
メソッド Process.#wait2 などの返り値として使われます。

=== 使用例

wait
を使用した例

fork { exit }
Process.wait
case
when $?.signaled?
p "child #{$?.pid} was killed by signal #{$?.termsig}"...
...ss.wait を使用しているので、ここに来ることはない
p "child #{$?.pid} was stopped by signal #{$?.stopsig}"
when $?.exited?
p "child #{$?.pid} exited normally. status=#{$?.exitstatus}"
else
p "unknown status %#x" % $?.to_i
end

SIGCHLD を trap する例

trap
(:S...
...セスの終了に対して1つの SIGCHLD しか届かない
# 場合があるのでループさせる必要があります

while Process.waitpid(-1, Process::WNOHANG|Process::WUNTRACED)
case
when $?.signaled?
puts " child #{$?.pid} was killed by signal #{$?.termsig}"...