3

サーバー側から RPC 接続の状態を確認する方法はありますか? クライアントのクラッシュやその他の接続の問題など、クライアントからの接続が失われたかどうかを検出する方法を探しています。

4

2 に答える 2

4

特定のクライアントの呼び出し間のサーバー状態を管理するには、コンテキスト ハンドルを使用します。RPC はキープアライブを使用してクライアントの切断を検出し、クライアントが切断された場合にコンテキスト ハンドルのランダウン ルーチンを実行します。

于 2009-02-26T13:14:46.477 に答える
1

Mo Flanaganの答えは最高のIMHOです。もう少しコンテキスト。

バインディング ハンドルを使用している場合、RPC 呼び出し間で状態を追跡する方法はなく、「クライアントの切断」の概念は本質的に無意味です。RPC 呼び出しから戻る必要があります。

コンテキスト ハンドルを使用している場合、RPC ランタイム ライブラリは、クライアントが切断されたときに _rundown 関数を呼び出します。

そのルーチンが呼び出されると、サーバーは必要なものをすべてクリーンアップできます。

于 2009-02-27T00:26:43.383 に答える