示例#1
0
        public static void Main(string[] args)
        {
            DataTable dt   = new DataTable();
            var       dddd = dt.SerializeToByte();
            int       len  = 1234445566;

            byte[] d = new byte[4];
            d[0] = (Byte)((len & 0x7f000000) >> 24);
            d[1] = (Byte)((len & 0xff0000) >> 16);
            d[2] = (Byte)((len & 0xff00) >> 8);
            d[3] = (Byte)(len & 0xff);

            int reciveObjLength = d[3];

            reciveObjLength += (d[2] << 8);
            reciveObjLength += d[1] << 16;
            reciveObjLength += (d[0] & 0x7f) << 24;



            Message msg = new Message();

            var server = new TcpServerSocket();

            //server.eShowMsg += Server_eShowMsg;
            //server.HandleMessage += Server_HandleMessage;
            server.OnError += Server_OnError;
            if (server.Bind(23456))
            {
                server.Listen();
            }
            int lastSended = 0, lastRec = 0;

            new Action <TcpServerSocket>((s) => {
                while (true)
                {
                    //  while (sendCount < recCount)
                    {
                        //lock (lck2)
                        //sendCount += s.SendMessageAsync(msg);
                        //   Thread.Sleep(1);
                    }
                    Thread.Sleep(10);
                }
            }).BeginInvoke(server, null, null);
            while (true)
            {
                //   if (rp != null)
                {
                    //        server.SendMessageAsync(msg);
                    //         Thread.Sleep(1);
                }
                //      else
                {
                    Thread.Sleep(1000);
                    Console.WriteLine($"收到:{recCount}  发出:{sendCount}  客户端:{server.ClientCount}");
                    Console.Title = $"接收:{recCount - lastRec}  发出:{sendCount - lastSended}  客户端:{server.ClientCount}";
                    lastRec       = recCount;
                    lastSended    = sendCount;
                }
                //reCount = 0;
            }
        }