1

ネットワークを介したクライアントサーバー通信用にIDLファイルを使用してクライアントサーバーアプリケーションを構築しました。クライアントプログラムとサーバープログラムはどちらもJavaです。ユーザーがexitに入ると、サーバーとクライアントの両方が終了します。ただし、ネームサーバープロセスを強制終了できません。コマンドを使用してネームサーバーを起動しました

tnameserv -ORBInitialPort 1050

クライアントまたはサーバープログラム(Javaにある)でネームサーバーを強制終了するにはどうすればよいですか?

4

1 に答える 1

2

tnameserv を実行するときは、kill コマンド (linux、unix) または Ctrl+C (windows) で強制終了する必要があります。

Linux/Unix の場合、これでうまくいくはずです。

killall tnameserv

http://java.sun.com/j2se/1.4.2/docs/guide/idl/tnameserv.html#stoppingnameserverを参照してください。

編集:

withing java から killall コマンドを発行する場合は、次のようにします。

runtime.exec("killall tnameserv");

http://java.sun.com/javase/6/docs/api/java/lang/Runtime.htmlを参照してください。

考え:

プログラムの外部から tnameserv を開始し、内部からそれを強制終了しようとするのは奇妙に思えます。(許可の問題、nameserv を使用している他のユーザーなど) 必要に応じて、アプリ内から tnameserv を開始してみませんか?

于 2009-10-18T22:26:02.487 に答える