示例#1
0
文件: Client.cs 项目: Soarc/Intership
        public void StartReceive()
        {
            while (true)
            {
                var stream = _tcpClient.GetStream();
                stream.Read(_messageLenght, 0, _messageLenght.Length);

                var data = new byte[BitConverter.ToInt32(_messageLenght, 0)];
                stream.Read(data, 0, data.Length);

                var message = new Message();
                message.ReadBytes(data);

                if (MessageReceived != null)
                {
                    var thread = new Thread(() => MessageReceived(this, message));
                    thread.Start();
                }

        
               

             


            }
            

        }
示例#2
0
文件: Client.cs 项目: Soarc/Intership
        async public Task StartReceiveAsync()
        {
            while (true)
            {
                var stream = _tcpClient.GetStream();

                var   mesLen = stream.ReadAsync(_messageLenght, 0, _messageLenght.Length);
                await mesLen;

                //mesLen.Result()'
                var data = new byte[BitConverter.ToInt32(_messageLenght, 0)];
                await stream.ReadAsync(data, 0, data.Length);

                var message = new Message();
                message.ReadBytes(data);

                if (MessageReceived != null)
                {
                    //var thread = new Thread(() => MessageReceived(this, message));
                    //thread.Start();

                    //await MessageReceivedAsync(this, message);

                    await Task.Run(() => MessageReceived(this, message));
                }
            }
        }
示例#3
0
        public void StartReceive()
        {
            while (true)
            {
                var stream = _tcpClient.GetStream();
                stream.Read(_messageLenght, 0, _messageLenght.Length);

                var data = new byte[BitConverter.ToInt32(_messageLenght, 0)];
                stream.Read(data, 0, data.Length);

                var message = new Message();
                message.ReadBytes(data);

                if (MessageReceived != null)
                {
                    var thread = new Thread(() => MessageReceived(this, message));
                    thread.Start();
                }
            }
        }
示例#4
0
文件: Client.cs 项目: Soarc/Intership
        async public Task StartReceiveAsync()
        {
            while (true)
            {
                var stream = _tcpClient.GetStream();

                var mesLen = stream.ReadAsync(_messageLenght, 0, _messageLenght.Length);
                await mesLen;

                //mesLen.Result()'
                var data = new byte[BitConverter.ToInt32(_messageLenght, 0)];
                await stream.ReadAsync(data, 0, data.Length);

                var message = new Message();
                message.ReadBytes(data);

                if (MessageReceived != null)
                {
                    //var thread = new Thread(() => MessageReceived(this, message));
                    //thread.Start();

                    //await MessageReceivedAsync(this, message);

                    await Task.Run(() => MessageReceived(this, message));
                }

        
               

             


            }
            

        }