Signalr 如何延迟对信号器1.0.0Alpha2中OnDisconnected()的调用

Signalr 如何延迟对信号器1.0.0Alpha2中OnDisconnected()的调用,signalr,signalr-hub,Signalr,Signalr Hub,我目前正在使用SignalR 1.0.0Alpha 2。我已经重写了OnDisconnected方法,之前我通过实现Disconnect实现了相同的功能。但我面临的问题是,在刷新页面或断开连接时,OnDisconnected会立即被调用。我的理解是,假设DisconnectTimeout默认值为20秒,则应该在20秒后调用它 根据应用程序的要求,我们希望在大约30秒后调用OnDisconnected。我已经尝试按照文档进行操作,并将DisconnectTimeout设置为更高的值,但这没有帮助

我目前正在使用SignalR 1.0.0Alpha 2。我已经重写了OnDisconnected方法,之前我通过实现Disconnect实现了相同的功能。但我面临的问题是,在刷新页面或断开连接时,OnDisconnected会立即被调用。我的理解是,假设DisconnectTimeout默认值为20秒,则应该在20秒后调用它

根据应用程序的要求,我们希望在大约30秒后调用OnDisconnected。我已经尝试按照文档进行操作,并将DisconnectTimeout设置为更高的值,但这没有帮助

回到0.4.x版本,我成功地实现了DisconnectTimeout,延迟得到了尊重。但从0.5.3开始,我们没有看到这种行为


我不确定我们做错了什么。我们所需要的只是不要立即呼叫OnDisconncted

断开连接是无法延迟的。如果您想延迟运行逻辑,您可以随时执行Task.delay或Thread.Sleep(任务延迟或线程延迟)。如果您想阻止,请执行睡眠。

当然,谢谢。我目前正在使用Thread.Sleep和business logic来确定会话是否真的结束或刚刚重新连接。但是如果我说行为已经从0.4.x版本改变了,在0.4.x版本中DisconnectTimeout用于延迟对Disconnect的调用,那么我说的对吗?哦,是的,它已经改变了。在2种情况下调用Disconnect。它在浏览器关闭或连接时立即被调用。Stop称为客户端。当浏览器崩溃时,或者如果客户机没有机会向客户机发送数据包而没有离开,那么它就会离开,并最终断开连接超时。