C# 信号R集线器启动挂起
我有一个.net控制台应用程序,它调用signal R hub方法。 我成功地将连接配置为在多次失败后重新启动,并在超过重试次数后启动一个新的集线器实例 问题有时是hub.start方法会毫无例外地挂起,并且它没有进入continuation 代码如下:C# 信号R集线器启动挂起,c#,signalr,C#,Signalr,我有一个.net控制台应用程序,它调用signal R hub方法。 我成功地将连接配置为在多次失败后重新启动,并在超过重试次数后启动一个新的集线器实例 问题有时是hub.start方法会毫无例外地挂起,并且它没有进入continuation 代码如下: private static void restart() { Logging("Restarting connection", EventLogEntryType.Warning); hubConn
private static void restart()
{
Logging("Restarting connection", EventLogEntryType.Warning);
hubConnection.Start() // it stuck without any error after several retry
.ContinueWith((t) =>
{
if (restartCount <= restartRetryCountMax)
{
if (t.IsFaulted)
{
restartCount++;
restart();
}
else
{
CheckClientStatus();
}
}
else
{
restartCount = 0;
Logging("Initialize new connection", EventLogEntryType.Information);
start();//start a fresh hub instance
}
});
}
private static void restart()
{
日志记录(“重新启动连接”,EventLogEntryType.Warning);
hubConnection.Start()//在多次重试后,它没有出现任何错误
.ContinueWith((t)=>
{
如果(restarcount此处显示的代码没有问题。您需要提供一个示例。我只是想让它简单一点,基本上这个方法是在连接断开时调用的。我不想每次连接超时时都创建新的集线器实例,所以在不创建新的集线器实例的情况下再次启动连接。如果我在它将命中hub start方法,然后它将毫无例外地释放它。此方法随机卡住。您在此处显示的代码没有问题。您需要提供一个示例。我只是想让它简单一些,基本上此方法是在连接断开时调用的。我不想每次连接时都创建新的hub实例默认值为超时,因此在不创建新的集线器实例的情况下再次启动连接。如果我放置断点,它将命中集线器启动方法,然后它将毫无例外地释放它。此方法随机卡住。