// Handle socket accept
        private void StartAccept()
        {
            Logger.Info("Star to accept socket connection.");

            SocketAsyncEventArgs acceptArgs = new SocketAsyncEventArgs();

            acceptArgs.Completed += AcceptCompleted;

            bool willRaiseEvent = NetworkSocket.AcceptAsync(acceptArgs);

            Logger.InfoFormat("Accepted socket connection, rise async event? {0}.", willRaiseEvent);

            if (!willRaiseEvent)
            {
                Logger.Debug("The socket connect operation completed synchronously");
                AcceptCompleted(NetworkSocket, acceptArgs);
            }
        }