Beispiel #1
0
        private void Start()
        {
            _packetDispatcher = new MethodSelector<Packet>(this, (ref Packet source, out string key) =>
            {
                key = source.PacketId.ToString();
                source.SkipHeader();
            });

            _udp = new UDPClient();
            _udp.EventRead += NetworkEvent_Receive;
            _udp.EventClose += NetworkEvent_Close;
            _udp.Connect("127.0.0.1", 10201);

            _counter = new IntervalCounter(1000);
            _counter.Start();
            (new IntervalTimer(1000, () =>
            {
                DateTime now = DateTime.Now;
                Console.WriteLine(string.Format("[{0}/{1} {2}:{3}:{4}] recv: {5}",
                                        DateTime.Now.Month, DateTime.Now.Day,
                                        DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second,
                                        _counter.Value));
            })).Start();

            {
                Packet reqPacket = new Packet(Protocol.Echo_Req);
                Send(reqPacket);
            }
        }