Tempo Limite suportado Solicitação da Web Multithreaded

Se você estiver usando para fins simples, o WebClient é suficiente. Ausência de tempo limite você pode herdá-lo e substituir o método GetWebRequest facilmente:

protected override WebRequest GetWebRequest(Uri address)
{
    WebRequest request = base.GetWebRequest(address);
    request.Timeout = Timeout;
    return request;
}

Se você estiver usando o modo multithread, você deve configurar o MaxConnection por código ou app.config:Melhorando o desempenho de HttpWebRequests multithread no .NET

Você pode paralelizar facilmente também:Melhor prática para paralelizar o rastreador da Web no .net 4.0

Talvez a Microsoft tenha criado uma nova classe HttpClient para problemas de implemantation do WebClient (HttpWebRequest)

Mas não tem proxy, suporte a Gzip.

Para WebClient:

Configurando o tempo limite ainda inútil na implementação multithread!

Limite de simultaneidade no HttpWebRequest

Então a questão:

Eu preciso de FastWebClient com proxy, timeout (trabalhando um), suporte gzip. Eu vou usá-lo com vários proxies, então eu definitivamente preciso de vários FastWebClient.

Ou ajudante:

FastWebHelper.DownloadString (string url, proxy WebProxy, int timeout)

Qualquer ideia ?

questionAnswers(1)

yourAnswerToTheQuestion