2017-11-14 7 views
0

私はRMIを使用するプログラムに取り組んでいます。メインプロセスは、RMIレジストリと、オブジェクトを作成してレジストリにバインドする子プロセスを開始します。私が直面している最大の問題は、RMIレジストリを正しく閉じることができないことです。私は使用できることを知りましたJava - RMIレジストリを閉じるには?

UnicastRemoteObject.unexportObject(registry, true); 

もちろん、レジストリはLocateRegistry.createRegistry関数によって返されます。レジストリはポートを閉じますが、レジストリを実行するjavaプロセスはまだ生きています。 問題は、プロセスでRMIレジストリを閉じる方法です。私が走ろうとしたときでも、私のプログラムが終了しても、プロセスはまだ生きていました。

答えて

0

私はgo to whoaから4秒後にコードを実行し、JVMは終了しました。他のデーモン以外のアプリケーションスレッドを起動しておく必要があります。あなたはすべてそれをしてSystem.exit()に電話することができます。あまりにも暴力的すぎると思われる場合は、すべてのアプリケーションスレッドが終了していることを確認してください。

関連する問題