2009-08-19 13 views
1

私は2つの異なるプロセスに2つのクライアントがあり、RMIを介してサーバと通信します。RMI java-2クライアント1サーバの競合状態

私の質問は: 両方のクライアントが同時にサーバーのスタブを呼び出すとどうなりますか?あなたの時間のための

おかげで、デフォルトでは不都合な 私

答えて

1

何もない - それは、正確に、同時に2つのスレッドから他のオブジェクトのメソッドを呼び出すのと同じです。 1台のサーバーから多くのクライアントモデルは、RMIのようなネットワークプロトコルが対象となります。

サーバー内の共有データへのアクセスは、必要に応じて同期化されたブロックによって制御する必要があります。それはサーバーが何をしているかによって異なります。

3

This tutorialは、RMIサーバのスレッドの性質を示しています(タスク7.1を参照)。彼らは、RMI仕様から引用:

リモートオブジェクト実装( サーバ)にRMIランタイム によってディスパッチメソッドがまたは 別個のスレッドで実行してもしなくてもよいです。異なったクライアントからの の発信仮想 機械は異なる スレッドで実行されます。同じクライアントマシン から、異なるクライアントからの呼び出しは、サーバー内の別のスレッドを経て実行されてしまいますので、それぞれの方法 は別のスレッドで

を実行することを保証するものではありません。

+0

おかげでブライアン、私はあなたの答えについて、別の質問を持っている : 2つの異なるクライアントからの呼び出しが別のスレッドで実行されますので、 があることが保証されている私のRMIオブジェクトはラッピングRMIオブジェクトが同様にステートレスでステートレスである場合には? ありがとうございました –

+0

BTW のような会社名... OOPS consultancy –

関連する問題