javaからシェルスクリプトを起動したい。Runtime.exec メソッドで実行できます。しかし問題は、シェル スクリプトの実行に約 3 ~ 4 時間かかることです。現在のスレッドを 4 時間待機状態に保つため、このような長いプロセスに Process.waitFor() を適用することはお勧めできません。これは、複数の Java スレッドが複数のシェル スクリプトを呼び出し、それぞれに 3 時間以上かかるマルチスレッド環境で発生します。(スレッド数は少なくなりますが)
Javaプロセスが待機する必要がなく、シェルスクリプトがいつ終了するかを知るために、どうすれば非同期にすることができますか。JMS を使用するオプションがありません。
堅実な解決策をお勧めします。