五樹島と申します。

ruby で CGIを書いています。

マニュアルを見てもわからなかったので質問させてください。
perl で書いていた以下の処理はrubyではどのように記述すれば良
いでしょうか。


(1)

perl では

    $SIG{'STOP'} =
    $SIG{'ABRT'} =
    $SIG{'KILL'} =
    $SIG{'INT'} =
    $SIG{'HUP'} =
    $SIG{'QUIT'} =
    'dokill';

sub dokill {

。。。

}

などと記述することで、スクリプトに送られてきたsignalごとに分け
て処理することが可能でしたが、rubyではどのように記述すればいい
でしょうか。



(2)

socket 通信などで、先方にコマンドを送ったとき、ある秒数だけ
待って、その時間内に返事がくれば通常処理。その時間内に返事がこ
なければタイムアウト処理をするという記述は、どうするのが適切で
しょうか。

perl では次のように書いていました。

$SIG{'ALRM'} = 'onalarm';
alarm 10;eval {
        ....
}

sub onalarm {
        ....
}


以上、よろしくおねがいします。




- Contents Engineer -  五樹島 敬之  Takayuki SAGIJIMA
                                 (mailto:sat / moon.letter.co.jp)