如何在可移植框架中设置ServicePointManager.DefaultConnectionLimit

时间:2014-08-16 15:08:14

标签: c# .net portable-class-library system.net

我需要使用多个任务来完成Web服务端点。每个任务都是流数据,并且将打开httpWebRequest连接。

我需要将属性ServicePointManager.DefaultConnectionLimit设置为大于2的值,但我使用的是可移植框架,并且ServicePointManager类不可用(应该在System.Net中)。

如何在便携式框架中允许更多开放式Web请求?

问候。

1 个答案:

答案 0 :(得分:0)

我无法在便携式框架中找到使用webrequest对象的超过2个连接的方法,但我确实找到了一种方法来获得更多的并发连接。 我只是使用HttpClient类。

在我的测试中,使用HttpClient时,可以使用2个以上的并发连接。我试过10并且工作正常。

以下测试有10个并发连接:

   var clients = new List<System.Net.Http.HttpClient>();

        for (int i = 0; i < 10; i++)
        {
            var client = new System.Net.Http.HttpClient();

            var response = client.GetAsync("http://www.google.com").Result;

            clients.Add(client);
        }
        foreach (var client in clients)
            client.Dispose();

这是一种解决方法。然而,我原来的问题仍然没有答案。