Пример #1
0
        static void Main(string[] args)
        {
            IPEndPoint superPeerEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8090);
            int        port = 8091;

            ServerPeer server = new ServerPeer(superPeerEndPoint, port);

            server.Run();

            ClientPeer client = new ClientPeer(superPeerEndPoint);

            client.Run();

            //used Task.Factory.StartNew(() and sleep to simulate that this tasks are performed on different applications/machines
            Task.Factory.StartNew(() => server.AllowConnection(client.GetPeerAddress()));
            Thread.Sleep(3000);
            Task.Factory.StartNew(() => client.Connect(server.GetPeerAddress()));

            Thread.Sleep(3000);
            server.Send(new byte[] { 1, 2, 3, 4, 5 });
            Console.WriteLine(client.Read());

            client.Close();
            Thread.Sleep(1000);
            server.Close();

            Thread.Sleep(60000);
        }