gpt4 book ai didi

android - 当我的移动数据连接关闭时,如何在 SignalR 中断开连接

转载 作者:行者123 更新时间:2023-11-30 02:33:03 24 4
gpt4 key购买 nike

我已经使用 Android 应用程序实现了 ASP.NET SignalR。应用程序运行良好,但存在问题。当我关闭数据连接时,SignalR 需要时间来断开在 onConnected() 时创建的连接 ID,因为它会尝试建立连接直到时间达到断开连接时间它会尝试继续建立连接,因此周期约为 1.5分钟应用程序变得无用。我不想要。我希望如果连接因连接丢失而中断,应立即断开连接。有没有人对此有解决方案。

最佳答案

您应该创建自己的方法来在此类事件上停止客户端连接。您可能会使用类似于此的东西

connection.hub.stop();

但如果您真的希望服务器不等待,您将调整断开连接超时,但如果您这样做,则必须相应地调整保持 Activity 超时(如果是手动设置的话)。

断开连接超时

www.asp.net/signalr/overview/guide-to-the-api/handling-connection-lifetime-events#disconnecttimeout

此设置表示传输连接丢失后引发 Disconnected 事件之前等待的时间量。默认值为 30 秒。当您设置 DisconnectTimeout 时,KeepAlive 会自动设置为 DisconnectTimeout 值的 1/3。

    // Wait a maximum of 30 seconds after a transport connection is lost
// before raising the Disconnected event to terminate the SignalR connection.
GlobalHost.Configuration.DisconnectTimeout = TimeSpan.FromSeconds(30);

关于android - 当我的移动数据连接关闭时,如何在 SignalR 中断开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27012136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com