public void LogOut() { Wait(); OnlineUser onlineUser = OnlineUsers.FirstOrDefault(o => o.HasConnectionId(Context.ConnectionId)); if (onlineUser != null) { if (onlineUser.CanRemove) { OnlineUsers.Remove(onlineUser); } else { onlineUser.RemoveConnectionId(Context.ConnectionId); } } Signal(); }