Beispiel #1
0
        public static async Task PerfEchoServer(int port, CancellationToken ct)
        {
            var server = new System.Net.Sockets.TcpListener(System.Net.IPAddress.Any, port);

            server.Start();
            try {
                await Task.Run(async() => {
                    var client  = await server.AcceptSocketAsync();
                    var buf     = new byte[0x10000];
                    var rcvbyte = 0;

                    while ((rcvbyte = client.Receive(buf, buf.Length, System.Net.Sockets.SocketFlags.None)) > 0)
                    {
                        client.Send(buf, rcvbyte, System.Net.Sockets.SocketFlags.None);
                    }
                }, ct);
            }
            catch {}
            finally {
                server.Stop();
            }
        }