Blaze.Server.BlazeHubServer.ReadCallback C# (CSharp) Method

ReadCallback() private static method

private static ReadCallback ( IAsyncResult ar ) : void
ar IAsyncResult
return void
        private static void ReadCallback(IAsyncResult ar)
        {
            try
            {
                var clientID = (long)ar.AsyncState;
                var client = Clients[clientID];

                int length = client.Stream.EndRead(ar);

                if (length == 0)
                {
                    CloseSocket(ar);
                    return;
                }

                client.HandleRequest(client.ReceiveBuffer, length);

                client.Stream.BeginRead(client.ReceiveBuffer, 0, client.ReceiveBuffer.Length, ReadCallback, clientID);
            }
            catch
            {
                CloseSocket(ar);
            }
        }