Асинхронная отправка GET запросов

Покажите, пожалуйста, пример асинхронной отправки большого количества GET запросов. Например, есть список List, в котором содержится 10 url адресов.

static async Task Main(string[] args)
        {
            int count = 0;
            long start, end;
            int i = 0;

            List<string> pairs = new List<string>() { "ADABTC", "ADXBTC", "ARPABTC", "ASTBTC", "BLZBTC", "BQXBTC", "DLTBTC" };

            System.Diagnostics.Stopwatch sw = new Stopwatch();

            sw.Start();
            start = sw.ElapsedMilliseconds;

            while (true)
            {
                using var client = new HttpClient();

                var tasks = pairs.Select(pair => client.GetAsync(BinanceApi._depth_string_request(pair)));



                var qw = await Task.WhenAll(tasks);
                Console.WriteLine(qw.Length);
                foreach (var c in qw)
                {

                    foreach (var b in BinanceApi.depth_JSON_parse(c.Content.ReadAsStringAsync().Result.ToString(), 100))
                    {

                        Console.WriteLine(b.Key + " " + b.Value);

                    }
                    //Console.WriteLine(BinanceApi.depth_JSON_parse(c.Content.ReadAsStringAsync().Result.ToString(),100));
                }
                count = count + qw.Length;
                end = sw.ElapsedMilliseconds - start;
                if (end >= 60000) 
                { count = 0; 
                  end = 0;
                  sw.Start();
                  start = sw.ElapsedMilliseconds;

                }
                Console.WriteLine(end + " " + count);
                Thread.Sleep(1000);
            }
        }

Ответы (0 шт):