WebRequest.GetResponse блокируется?

При написании ниже мой код блокируется на GetResponse. Зачем?

        try
        {
            WebRequest myWebRequest = WebRequest.Create(strURL);
            WebResponse myWebResponse = myWebRequest.GetResponse();
            //more code here

1 ответ

Решение

Обычно это происходит, если вы сделали несколько запросов на один и тот же хост и не утилизировали WebResponse,

Настройки управления соединениями по умолчанию позволяют одновременно открывать только 2 (или, может быть, 4, я не помню) соединения с одним и тем же хостом. Если вам действительно нужно изменить это, используйте <connectionManagement> элемент app.config - но обычно у вас все будет хорошо, просто избавившись от WebResponse:

try
{
    WebRequest myWebRequest = WebRequest.Create(strURL);
    using (WebResponse myWebResponse = myWebRequest.GetResponse())
    {
        //more code here
Другие вопросы по тегам