using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using DotNetty.Transport.Bootstrapping; using DotNetty.Transport.Channels; using DotNetty.Buffers; using System.Threading; namespace nettyCommunication { class Program { static void Main(string[] args) { //连接并初始化, try { ClientDemo.RunClientAsync().Wait(); } catch (Exception) { Console.WriteLine("服务没有开启,请检查服务器"); // Console.WriteLine(e.ToString()); } Communication comm = new Communication(ClientDemoHandler.CTX); MessageUTF8 message = new MessageUTF8(); message.cmd = "w"; message.garageID = 4; MessageUTF8 messageTemp = null; while(true) { MessageUTF8 ms = (MessageUTF8)comm.ReceiveMessage(ClientDemoHandler.Message); if(ms !=null) { if (messageTemp != ms) { Console.WriteLine(ms.context); } messageTemp = ms; } else { Console.WriteLine("服务器没有发送消息对象,消息对象为空"); } //string contxt = Console.ReadLine(); message.context = "ddddddddddddd"; message.cmd = "S"; message.parkingRecordsID = 1; //comm.SendMessage(message);//消息 Thread.Sleep(2000); } } //public static async Task sendMessage(IChannelHandlerContext ctx,object message) //{ // AbstractMessage ms = (AbstractMessage)message; // IByteBuffer initialMessage = Unpooled.Buffer(ClientSettings.Size); // //byte[] messageByte = Encoding.UTF8.GetBytes(msg); // byte[] byteMessage = JsonByByteToObjectTools.ObjToJsonByte(ms); // initialMessage.WriteBytes(byteMessage); // await ctx.WriteAndFlushAsync(initialMessage); // ctx.Flush(); //} } }