HttpWebResponse: fechando o fluxo

Estou recebendo a resposta de umHttpWebRequest (usando uma versão modificadaInvólucros CCR de Jeff Richter), em seguida, inspecionando alguns dos cabeçalhos para decidir se deve ou não continuar o download. Às vezes eu posso não querer continuar, então eu conseqüentemente emitiresposta.Fechar erequest.Abort. É necessário emitirGetResponseStream em seguida, para fechar o fluxo, ou isso é implícito quando se chamaresposta.Fechar?

Após a emissão da GetResponse, odocs state:

Você deve chamar o método Close para fechar o fluxo e liberar a conexão. Não fazer isso pode fazer com que seu aplicativo fique sem conexões.

Então, isso significa que, uma vez que tenhamos uma resposta, então é obrigatório pegar o córrego e fechá-lo?

Estamos vendo alguns problemas bastante estranhos em que os downloads suspensos acabam sobrecarregando o sistema. Esse parece ser o candidato mais forte a um vazamento de recursos, mas imagine se alguém mais tiver experiência com esse problema.

Como um aparte: é seguro para GetResponseStream duas vezes no pressuposto de que é o mesmo fluxo?

questionAnswers(3)

yourAnswerToTheQuestion