Esempio n. 1
0
        static int RunInProc(InProcOptions options)
        {
            Console.WriteLine("Running in-process over loopback");

            IPEndPoint serverEndpoint = ServerListener.Run(new IPEndPoint(IPAddress.Loopback, 0), GetX509Certificate(options), options.MessageSize);

            ClientHandler[] clientHandlers = ClientRunner.Run(serverEndpoint, options.UseSsl, options.Clients, options.MessageSize);

            ShowResults(options, clientHandlers);

            return(1);
        }
Esempio n. 2
0
        public static int Run(InProcOptions opts, CancellationTokenSource cancellationSource)
        {
            var(ep, finished) = opts.Tcp
                ? ServerListener.StartTcpTls(new IPEndPoint(IPAddress.Loopback, 0), opts.CertificateFile, opts.PrivateKeyFile, cancellationSource.Token)
                : ServerListener.StartQuic(new IPEndPoint(IPAddress.Loopback, 0), opts.CertificateFile, opts.PrivateKeyFile, cancellationSource.Token);

            var clients = Client.StartClients(ep, opts, cancellationSource.Token);

            ResultMonitor.MonitorResults(clients, opts, cancellationSource);
            Task.WaitAll(clients.Select(c => c.CloseAsync()).Concat(new [] { finished }).ToArray());

            return(0);
        }