Exemplo n.º 1
0
        public static void keepAlive()
        {
            lock (userlist)
            {
                removeUsers.Clear();
                for (int i = 0; i < MainServer.userlist.Count; i++)
                {
                    TimeSpan timespan = DateTime.Now - MainServer.userlist[i].lastPingTime;
                    if (timespan.TotalSeconds > 15)
                    {
                        Console.WriteLine("user가 비정상으로 끊겼다." + MainServer.userlist[i].token.socket.Handle);
                        removeUsers.Add(MainServer.userlist[i]);
                        userlist.Remove(MainServer.userlist[i]);
                    }
                }

                for (int i = 0; i < removeUsers.Count; i++)
                {
                    MainServer.UnNormalRemoveUser(removeUsers[i]);
                }
            }
        }
Exemplo n.º 2
0
 void IPeer.on_removed()
 {
     MainServer.NormalRemoveUser(this);
 }