- - PR -
tomcatのスレッドについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-11-23 09:23
はじめまして。taptashと申します。
Tomcatのスレッドについて質問させてください。 現在、ApacheからのリクエストをTomcatに投げ、サーブレットへ渡す システムを構築しております。渡されたリクエストは、サーブレットが ラップしているCGIへ渡され処理されます。 ここで、CGIへ渡すプロセス中にエラーが起き、そのままTomcatのスレッド が残ってしまうという問題が発生しております。 スレッドが残っているので、プロセスをkillしてもCPUは回復しません。 Tomcatの設定か何かで、ある一定時間存在しているスレッドは開放する 等という対処法はないのでしょうか? その他、何かありましたらご教授ください。 よろしくお願い致します。 | ||||
|
投稿日時: 2006-11-23 17:59
プロセスをkillって、CGIのプロセスをkillするって意味ですか? CPUの回復って何でしょう?ビジーループで使用率が上がっているのですか? Thread#stop()による強制停止は基本的に厳禁ですし、 interrupt()を受け付けられる状態でない場合は停止できません。 OS側のスレッド強制停止(Win32のTerminateThread等)の場合は、 停止自体は行えますが、Thread#stop()の場合よりさらに危険です。 その辺りの理由から、スレッド強制停止の機能はありません。 CGIの起動(と終了監視?)を行っている箇所を修正するか、 Tomcatのプロセス全体を止めるかのどちらかでしょう。 Unix系のOSで、killしてもTomcatが停止しないのであれば、 SIGTERMではなくSIGKILLを送れば普通は死にます。 |
1