2011-08-12 4 views
1

私はJava RMIを介して多数のクライアントにサービスを提供するリモートオブジェクトを持っています。したがって、クライアントを識別できるリモートオブジェクトが必要です。リモートオブジェクトにThread.currentThread().setId()を呼び出させることで、クライアントに一意のIDを割り当てることを考えています。私は、サーバが各クライアントを別々のスレッドとして見ていると仮定しています。Javaでは、サーバーはどのようにしてRMIクライアントのスレッドIDを変更できますか?

サーバーとクライアントの両方の部分を再生する1台のマシンでこの方法をテストする方法を教えてください。

それがうまくいかないと思われる場合は、どうすればこの問題を解決できますか?

ありがとうございます。

答えて

0

私は、サーバが各クライアントを個別の スレッドとみなしていると仮定しています。

これは想定できません。 RMI仕様では、サーバスレッドとクライアントスレッドの間のアソシエーションについての保証はないと述べています。

あなたが探しているのは、RemoteServer.getClientHost()です。

関連する問題