るりまサーチ

最速Rubyリファレンスマニュアル検索!
33件ヒット [1-33件を表示] (0.184秒)
トップページ > クエリ:-[x] > クエリ:r[x] > モジュール:Signal[x]

別のキーワード

  1. _builtin -
  2. open-uri open
  3. irb/input-method new
  4. irb/input-method gets
  5. matrix -

ライブラリ

キーワード

検索結果

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

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

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

trap は...
...前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそれを Proc オブジェクトに変換して返します。
また何も登録されていないときも nil を返します。
r
uby の仕組み...
...Process.kill :QUIT, $$ # 自身にSIGQUITを送信
r
escue SignalException
puts "rescue #$!"
end
# => rescue SIGQUIT

例:

Signal
.trap(:INT, "p true") # => "DEFAULT"
Signal
.trap(:INT) { p false } # => "p true"
Signal
.trap(:INT, proc{ p nil }) # => #<Proc:0x8e45ae0@-:2>...

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

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

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

trap は...
...前回の trap で設定したハンドラを返します。
文字列を登録していた場合はそれを、
ブロックを登録していたらそれを Proc オブジェクトに変換して返します。
また何も登録されていないときも nil を返します。
r
uby の仕組み...
...Process.kill :QUIT, $$ # 自身にSIGQUITを送信
r
escue SignalException
puts "rescue #$!"
end
# => rescue SIGQUIT

例:

Signal
.trap(:INT, "p true") # => "DEFAULT"
Signal
.trap(:INT) { p false } # => "p true"
Signal
.trap(:INT, proc{ p nil }) # => #<Proc:0x8e45ae0@-:2>...

Signal.#signame(signo) -> String (201.0)

引数で指定されたシグナル番号をシグナル名に変換して返します。

...引数で指定されたシグナル番号をシグナル名に変換して返します。

Signal
.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT

@see Signal.#list...

Signal.#signame(signo) -> String | nil (201.0)

引数で指定されたシグナル番号をシグナル名に変換して返します。 対応するシグナル番号が存在しない場合は nil を返します。

...引数で指定されたシグナル番号をシグナル名に変換して返します。
対応するシグナル番号が存在しない場合は nil を返します。

Signal
.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT

@see Signal.#list...