锁定SignalR Hub类中的自定义用户列表

时间:2016-03-15 12:39:14

标签: c# signalr signalr-hub

我有一个SignalR Hub子类,我保留了一个加入集线器的静态用户列表。是否需要在使用它的方法中锁定该列表,以及执行此操作的正确方法 - 这是一种正确的方法吗?

public class MessageHub : Hub
    {
        private static List<HubUser> users = new List<HubUser>();
        public void Join(string UserName)
        {
            lock(users){/*some code to validate and store user*/}
        }
        public List<HubUser> GetOnlineUsers()
        {
            lock (users)
            {
                return users.ToList<HubUser>();
            }
        }
        //other methods such as GetUsersCount(), IsUserOnline(string User)....
    }

0 个答案:

没有答案