Exemplo n.º 1
0
        private static void AcceptCallback(IAsyncResult result)
        {
            if (LoginManager.ServerIsClosed)
            {
                return;
            }
            Socket asyncState = (Socket)result.AsyncState;

            try
            {
                Socket client = asyncState.EndAccept(result);
                if (client != null)
                {
                    LoginClient sck = new LoginClient(client);
                    LoginManager.AddSocket(sck);
                    if (sck == null)
                    {
                        Console.WriteLine("LoginClient destruído após falha ao adicionar na lista.");
                    }
                    Thread.Sleep(5);
                }
            }
            catch
            {
                Logger.warning("[Failed a LC connection] " + DateTime.Now.ToString("dd/MM/yy HH:mm"));
            }
            LoginManager.mainSocket.BeginAccept(new AsyncCallback(LoginManager.AcceptCallback), (object)LoginManager.mainSocket);
        }