Esempio n. 1
0
 private void OnReceived(ReceivedEventArgs e)
 {
     int hashCode = this.GetHashCode();
     EventHandler<ReceivedEventArgs> handler = Received;
     e.ClientKey = hashCode.ToString(CultureInfo.InvariantCulture);
     if (handler != null) handler(this, e);
 }
Esempio n. 2
0
	    private void OnAppSocketReceived(object sender, ReceivedEventArgs e)
        {
            LastActiveTime = System.DateTime.Now;
        }
Esempio n. 3
0
        /// <summary>
        /// 异步接受数据
        /// </summary>
        /// <param name="result"></param>
        private void AsyncReceive(IAsyncResult result)
        {
            try
            {
                if (!_clientSocket.Connected)
                {
                    throw new SocketException(10054);
                }

                int readbyte = _clientSocket.EndReceive(result);
                if (readbyte == 0) //未收到数据
                    return;
                byte[] data = new byte[readbyte];
                for (int i = 0; i < readbyte; i++)
                {
                    data[i] = _receiveBuffer[i];
                }
                ReceivedEventArgs receivedEventArgs = new ReceivedEventArgs();
                receivedEventArgs.Data = data;
                OnReceived(receivedEventArgs);

                ReceiveData();
            }
            catch (SocketException exception)
            {
                switch (exception.ErrorCode)
                {
                        //客户端断开
                    case 10054:
                        Dispose();
                        break;
                    default:
                        System.Console.WriteLine("Socket错误:{0}", exception);
                        break;
                }
            }
        }