Signal.trapの上書き

既存の処理を上書きせずに、trapの処理を追加したい場合。 とりあえずこんな感じで出来た。

例:USR1シグナルの処理を追加する場合。

signal = :USR1
proc = Signal.trap(signal, nil)
Signal.trap(signal) {
  proc.call
  # 追加処理
}