1
在我们的应用程序中,客户端软件正在使用SignalR的.NET客户端库。两个几乎完全相同的调用被创建,但只有第一个执行。某些顺序SignalR调用丢失
一个目的提出下列调用:
AddSubscription(typeof(ObjA).Name);
AddSubscription(typeof(ObjB).Name);
AddSubscription()被其父实施:
_subscribedTypes.Add(type);
_realtimeClient.Invoke("Subscribe", type);
客户端在这种情况下调用是IHubProxy为SignalR客户一个封装器,返回与IHubProxy.Invoke()相同的任务。 _realtimeClient本身最终是一个在应用程序中共享的静态客户端实例。我们在调用或订阅服务器发送的事件之前没有问题。
无论出于何种原因,只有第一个AddSubscription会通过。如果我交换它们,那么现在先通过的任何一个都会通过。如果我通过,他们都执行。
什么可能会阻止这两者立即连续执行?
编辑:我应该补充一点,虽然客户端实例是静态的,但它的方法或属性都不是。