るりまサーチ (Ruby 2.1.0)

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

別のキーワード

  1. signal trap
  2. _builtin signal
  3. conditionvariable signal
  4. signal list
  5. monitor signal

キーワード

検索結果

SignalException (18010.0)

捕捉していないシグナルを受け取ったときに発生します。

捕捉していないシグナルを受け取ったときに発生します。

実際に発生したシグナル名は、
Exception#message から
「"SIG" + シグナル名」という形で得られます。

デフォルトの状態では、
以下のシグナルが SignalException を発生させます。

* SIGALRM
* SIGHUP
* SIGINT (※ただし以下参照)
* SIGQUIT
* SIGUSR1
* SIGUSR2
* SIGTERM

なお、SIGINT シグナルを受けた場合は SignalException の下位クラスである
Interrupt が発生します。

Process::Status (208.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
...

Interrupt (28.0)

SIGINT シグナルを捕捉していないときに SIGINT シグナルを受け取ると発生します。 SIGINT 以外のシグナルを受信したときに発生する例外については SignalException を参照してください。

SIGINT シグナルを捕捉していないときに
SIGINT シグナルを受け取ると発生します。
SIGINT 以外のシグナルを受信したときに発生する例外については
SignalException を参照してください。

使用例

=begin
#SIGINTを捕捉したい場合
Signal.trap('INT'){
print "\nINTを捕捉した。\n"
exit 1
}
=end

begin
begin
print "z"
$stdout.flush
sleep(1)
end while true
...