РЕДАКТИРОВАТЬ: я понял, что ответ ниже будет соответствовать прямо противоположной ситуации, когда первый запрос работает, а другие нет.Тем не менее, это все еще важно - вы действительно должны избавляться от своих ответов.Также было бы полезно, если при сообщении об ошибке вы также сообщаете об исключении ...
Чтобы выяснить, что здесь происходит, вам действительно нужно использовать что-то вроде WireShark , чтобы выможно увидеть, заключается ли проблема в том, что запрос выполняется, но не отвечает, или же он даже не выполняется.
Интересно, действительно ли проблема в том, что он разрешает прокси,или что-то в этом роде ... и времени для его решения достаточно, прежде чем истечет время ожидания second .Попробуйте увеличить время ожидания.Опять же, это должно быть видно через WireShark.
Вы не избавляетесь от веб-ответа, поэтому пул подключений для второго запроса истекает в ожидании, чтобы восстановить это подключение.
Поместите часть WebResponse
в оператор using
, и вы, вероятно, обнаружите, что все отлично работает:
using (WebResponse myHttpWebResponse = myHttpWebRequest.GetResponse())
{
}
Это предполагает, что вы действительно делаете что-тос ответом, конечно.В противном случае вы могли бы просто написать:
myHttpWebRequest.GetResponse().Dispose();
:)