예제 #1
0
 void OnRemoveClientReceived(Guid senderClientId)
 {
     if (clientTable.Remove(senderClientId) && RemoteClientRemoved != null)
     {
         ClientIdEventArgs e = new ClientIdEventArgs(senderClientId);
         RemoteClientRemoved(this, e);
     }
 }
예제 #2
0
        void OnAdapterRemoteClientRemoved(object sender, ClientIdEventArgs e)
        {
            var adapter = (IRemoteHubAdapter<byte[]>)sender;
            var remoteClientId = e.ClientId;

            if (adapters.TryGetValue(adapter, out var idList))
            {
                if (adapters.ContainsKey(adapter))
                {
                    RemoveAdapterFromAdapterOfClients(remoteClientId, adapter);

                    idList.TryRemove(remoteClientId, out _);
                }
            }
        }
예제 #3
0
 private void RedisAdapter_RemoteClientRemoved(object sender, ClientIdEventArgs e)
 {
     FromAdapter_RemoteClientRemoved?.Invoke(this, e);
 }