问题描述
.NET Core 3.1中最新版本的SignalR出现问题。看来我的一种集线器方法正在阻止第二种集线器方法。
在客户端正确调用了集线器方法。在调用服务器上的LINQ查询GetPriceHistoryDifferentialAsync(调用快速单击按钮)之后,没有延迟,之后还记录了第二次调用GetPriceHistoryAsync(单击快速按钮)。
客户端控制台日志
调用:GetPriceHistoryAsync
调用:GetPriceHistoryDifferentialAsync
调用:GetPriceHistoryAsync
服务器日志
Stocks.Web.Hubs.StocksHub:信息:GetPriceHistoryAsync A UKhqAp6VQheTCrxYWeyjbQ
Stocks.Web.Hubs.StocksHub:信息:GetPriceHistoryDifferentialAsync UKhqAp6VQheTCrxYWeyjbQ
在GetPriceHistoryDifferential完成之前有一个延迟,然后对GetPriceHistory的所有剩余调用都将完成。
Stocks.Web.Hubs.StocksHub:信息:GetPriceHistoryAsync AAN UKhqAp6VQheTCrxYWeyjbQ
以前,在运行GetPriceHistoryDifferential查询方法调用时,单击按钮GetPriceHistory方法调用没有返回数据的延迟。我认为在此问题开始时才更新到.NET Core 3.1和最新的SignalR。 是否有人知道导致此问题的原因或如何使SignalR集线器方法再次并发运行?我正在使用async / await模型,这两种集线器方法都在等待Clients.Caller.SendCoreAsync。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)