エラーで落ちたとき、Perl.exeを止めるには?

[上に] [前に] [次に]
たこ 2000/06/10(土) 14:17:41
社内のサーバーを使って、Perlを作っています。
プログラムが間違っててエラー表示になったり、レスポンスが遅くて途中で戻るボタンをクリックしてしまった場合、サーバー上でPerl.exeがいくつも実行したままになります。
その際サーバーではCPUの負荷がかなり高くなってしまいます。
今はその都度、サーバーのタスクマネージャのプロセスで終了させていますが、実際にWebサーバーにのせて実装する場合はどうしたらよいのでしょうか?
どなたかいい知恵をお持ちの方がいたら教えてください。お願いします。

ヒソカ 2000/06/10(土) 14:23:51
タイムアウト処理はしてる?

たこ 2000/06/10(土) 14:33:13
タイムアウト処理ってプログラム中でするのですか?
(エラーのときの処理はファイルのOPENくらいで、あとはよくわからないのです。すみません。)

たこ 2000/06/11(日) 12:21:45
タイムアウト処理で過去の質問を調べたら、書いてあったので試してみました。
$SIG{ALRM}=\&alarm_handler;
を入れてみたのですが、
The Unsupported function alarm function is unimplemented at 〜
というエラーが出ました。本で調べたら、Windowsでは対応していないとありましたが、これに代わるようなコマンドや方法は無いのでしょうか?
どなたかご存知の方がいたら、お願いします。

たこ 2000/06/11(日) 14:31:41
[[解決]]
さらに履歴を見たら、下のページでselect()を使ってタイムアウト処理が出来るということでした。
http://www.kt.rim.or.jp/%7ekbk/perl5.005/perlipc.html#UDP_Message_Passing
ヒントをいただきありがとうございました。

B-Cus 2000/06/11(日) 14:43:24
ん〜、
>レスポンスが遅くて途中で戻るボタンをクリックしてしまった場合
という用途で、4引数 select が役に立ちますっけ?

たこ 2000/06/11(日) 15:10:49
追記してくれていたんですね。気付きませんでした。
A.plからフレーム二つにそれぞれB.plとC.plを表示させています。
A.plのはじめにこの4引数 selectを入れようと考えているんですが、これでは思ったような動作をしてくれないのですか?

[上に] [前に] [次に]