7

SignalR では、の実装により、ITransportHeartbeat.GetConnections()追跡されている接続のリストが取得されます。私のケースの 1 つで、もう存在しない Web ソケット接続を常に取得していました。

ITransportHeartbeatデフォルトのインスタンスを取得する方法は次のとおりです。

SignalRAutofac.Initialize();
IDependencyResolver resolver = GlobalHost.DependencyResolver;
ITransportHeartbeat heartbeat = resolver.Resolve<ITransportHeartbeat>();

SignalR が特定の間隔で追跡対象の接続にハートビートを送信していると想定しています。これは事実ですか?はいの場合、リストから 5 分間、切断された接続がドロップされていません。これは普通ですか?その切断された接続は、AppDomain の存続期間中存続するはずですか?

4

1 に答える 1

2

取得した接続の IsAlive プロパティを確認します。

于 2016-07-15T21:11:34.073 に答える