サーバー側のクリーンアップ

次のシナリオを想像してみてください。

クライアントはコンテキスト ハンドルを開き、サーバーへの接続を停止または失います。 クライアントが失敗し、コンテキスト ハンドルを実行する必要があることをサーバーはどのように検出しますか? 2 つのサブシナリオがあります。1 つは、クライアントが適切な方法でシャットダウンされるということです。 このような場合は、シャットダウン中であることをサーバーに通知し、コンテキスト実行の実行を含め、サーバーがクリーンできます。 クライアントが正常にシャットダウンしない場合、またはサーバーに通知できない場合、サーバーは keep alives を使用して、クライアントがまだ使用可能かどうかを判断します。 サーバー側では、 RpcMgmtSetComTimeout 関数は無効です。 代わりに、サーバーはマシンごとのグローバルキープアライブ設定を使用します。既定では約 2 時間です。 クライアントがサーバーのキープ アライブに応答しない場合、接続は閉じられます。 特定のクライアント プロセスへのすべての接続が閉じられると、サーバーはクリーンアップされ、未処理のコンテキスト ハンドルが実行されます。