HttpWebResponse: закрытие потока
Я получаю ответ отHttpWebRequest (используя измененную версиюОбертки Джеффа Рихтера CCR), затем проверяет несколько заголовков, чтобы решить, следует ли продолжить загрузку. Иногда я не хочу продолжать, поэтому я, следовательно, выпускаюresponse.Close а такжеrequest.Abort, Нужно ли выдаватьGetResponseStream затем закрыть поток, или это неявно, когда один вызываетresponse.Close?
После выдачи GetResponse,документы государства:
Вы должны вызвать метод Close, чтобы закрыть поток и освободить соединение. Невыполнение этого требования может привести к исчерпанию соединений вашего приложения.
Значит ли это, что, получив ответ, обязательно получить поток и закрыть его?
Мы наблюдаем некоторые довольно странные проблемы, когда зависшие загрузки в конечном итоге заваливают систему. Это кажется самым сильным кандидатом на утечку ресурсов, но интересно, есть ли у кого-нибудь еще опыт с этой проблемой.
Как в стороне: безопасно ли дважды GetResponseStream в предположении, что это один и тот же поток?