0

一部のサーバーで telnet/ssh seesion を使用して特定のシミュレータ プログラムを実行していますが、プログラムは SIGTERM に依存して終了します (「終了」文字列を対話的に入力しない場合)。

ほとんどのサーバーでは、telnet/ssh セッションを直接強制終了すると、通常、プログラムは自動的に終了します。しかし、特定のサーバーでは、私のシミュレーターは SIGTERM シグナルを受信せず、ROOT プロセスの子として実行し続けます。次に、これらのぶら下がっているプロセスは、多くの CPU リソースを消費します。

どこを見ればいいのか、誰か助けてくれませんか?または、この状況にどのように対処しますか?

ありがとう、ケビン

4

1 に答える 1

0

次のようなラッパープログラムを作成します

  1. シミュレータプログラムを実行します
  2. シミュレーターが終了すると、それ自体が終了します
  3. ルートプロセスの子になると、SIGTERMをシミュレーターに送信します(それが効果がない場合は、数秒後にSIGKILLを送信します)。

これはひどいハックですが、これまでに提供した情報に基づいて提案できる最善の方法です。

于 2012-08-10T08:57:15.547 に答える