2016-12-01 44 views
0

Disconnect Timeoutをデフォルトの30秒より高い値に設定しようとしています。 ウェブ上のすべての例は、より多くのJS指向です。コンソールアプリケーションSignalRクライアント切断タイムアウト

 var hubConnection = new HubConnection("http://localhost:8087"); 
     var testHubProxy = hubConnection.CreateHubProxy("TestHub"); 

エラー:System.TimeoutException:構成されたタイムアウト00:00:30以内に再接続できませんでした。

これは動作しませんでした:

 GlobalHost.Configuration.DisconnectTimeout = TimeSpan.FromSeconds(35); 

更新: DisconnectTimeoutは、サーバー側で設定する必要があるように見えます!

異なるクライアントが異なる切断タイムアウトを持つことを禁止する理由は何ですか?

答えて

1

切断タイムアウトは、サーバー側に設定されています。次のように主な理由は次のようになります。

  • 私たちは、サーバはすべてのクライアントがうまく認識してできるように対応するために、いくつかのN-時間単位がかかる場合があります知っています。
  • サーバはとなります。クライアントはに接続してください。は定期的に接続してください。したがって、サーバーはクライアントの接続を認識し、他のハブを管理し、接続プールから期限切れの接続を抹消することができます。
  • クライアントは、いつシャットダウンできるかわからないため、切断タイムアウトを設定することは想定されていません。インターネットは、クライアントが私にあなたに再び接続しないことをサーバーに伝えることができないよりも、クライアント側で誤ってスイッチオフしました。はい、しかし、我々はそれがであることを伝えるクライアント側でいくつかのイベントをシグナルホールダーにもうに接続していません。再接続と切断イベントを参照してください。

概要:

外しタイムアウトは、そのクライアントは、それが不名誉を切断ても、もはや接続されていないサーバに通知することです。

関連する問題