web-dev-qa-db-ja.com

常にapp Java「終了143」Ubuntuで終わる

永続的にプルされるJavaのアプリケーションがあります。次のように実行します。

Nohup ant> log.txt &

問題は、いつまでも続くことです。アプリケーションが終了し、「Exit 143」というメッセージが表示されます。

13
Fernando

終了コード143はSIGTERMに対応します。これは、kill <pid>を実行したときにデフォルトで送信される信号です。別のプロセスまたはユーザーがアプリケーションを強制終了している可能性はありますか?より多くの情報がなければ、他に何かを提案することは困難です。

27
Adamski

Nodejsを使用しているときに同様の問題に遭遇しましたが、実際には私のアプリとコードがそれを強制終了していることがわかりました。

私はこのようなコードを持っていました(そう、私はそのような関数名を持っていませんが、あなたは要点を理解します):

_kill_anything_that_is_still_running_from_previous_execution()
start_a_lot_of_stuff()
_

問題は、_kill_anything_that_is_still_running_from_previous_execution_が非同期ですぐに返され、(運が悪か​​ったため)実際の強制終了部分が常に_start_a_lot_of_stuff_の実行終了後にのみ発生することでした。 #spawncamping

ああ、そしてJavaの場合Runtime.getRuntime().exec("bash -c \"killall whatever\"")は、終了するのを待たなければ「非同期」です。

5
Tarnay Kálmán