小编Ele*_*ron的帖子

具有多个代理的 HttpClient,同时处理套接字耗尽和 DNS 回收

我们正在与朋友一起开发一个有趣的项目,我们必须执行数百个 HTTP 请求,所有请求都使用不同的代理。想象一下,它类似于以下内容:

for (int i = 0; i < 20; i++)
{
    HttpClientHandler handler = new HttpClientHandler { Proxy = new WebProxy(randomProxy, true) };

    using (var client = new HttpClient(handler))
    {
        using (var request = new HttpRequestMessage(HttpMethod.Get, "http://x.com"))
        {
            var response = await client.SendAsync(request);

            if (response.IsSuccessStatusCode)
            {
                string content = await response.Content.ReadAsStringAsync();
            }
        }

        using (var request2 = new HttpRequestMessage(HttpMethod.Get, "http://x.com/news"))
        {
            var response = await client.SendAsync(request2);

            if (response.IsSuccessStatusCode)
            {
                string content = await response.Content.ReadAsStringAsync();
            }
        }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# httpclient time-wait .net-core

4
推荐指数
1
解决办法
2927
查看次数

标签 统计

.net-core ×1

c# ×1

httpclient ×1

time-wait ×1