Exemple #1
0
        /// <summary>
        /// 메시지 수신
        /// </summary>
        /// <param name="ar"></param>
        public void MessageReceived(IAsyncResult ar)
        {
            int bytesRead;

            try {
                bytesRead = client.GetStream().EndRead(ar);

                if (Log.game.IsDebugEnabled)
                {
                    Log.game.Debug("receive bytes: " + bytesRead);
                }

                //Server disconnected
                if (bytesRead < 1)
                {
                    Disconnect();
                    return;
                }

                IoBuffer buffer = new IoBuffer(readBuffer);

                handler.MessageReceived(buffer);

                buffer.dispose();

                // start a new asynchronous read
                client.GetStream().BeginRead(readBuffer, 0, RECEIVE_BUFFER_SIZE, new AsyncCallback(MessageReceived), null);
            }
            catch {
                Disconnect();
            }
        }
        /// <summary>
        /// 메시지 수신
        /// </summary>
        /// <param name="ar"></param>
        public void MessageReceived(IAsyncResult ar) {
            int bytesRead;
            try {
                bytesRead = client.GetStream().EndRead(ar);

                if(Log.game.IsDebugEnabled)
                    Log.game.Debug("receive bytes: " + bytesRead);

                //Server disconnected
                if( bytesRead < 1 ) {
                    Disconnect();
                    return;
                }

                IoBuffer buffer = new IoBuffer(readBuffer);

                handler.MessageReceived(buffer);

                buffer.dispose();

                // start a new asynchronous read
                client.GetStream().BeginRead(readBuffer, 0, RECEIVE_BUFFER_SIZE, new AsyncCallback(MessageReceived), null);
            }
            catch {
                Disconnect();
            }
        }