我正在用C#编写下载管理器,使用了多个http请求,想知道如何确保连接被正确关闭?
只调用响应流上的Dispose方法是否足够?还需要调用Close方法吗? 不确定哪里可能出错,但某些网站会变得无响应。
谢谢!
我正在用C#编写下载管理器,使用了多个http请求,想知道如何确保连接被正确关闭?
只调用响应流上的Dispose方法是否足够?还需要调用Close方法吗? 不确定哪里可能出错,但某些网站会变得无响应。
谢谢!
将你的HttpWebResponse
用using块包装起来:
using(HttpWebResponse response = request.GetResponse())
{
// do stuff here
} // response object is automatically disposed of here.
HttpWebResponse webResponse = null;
try {
webResponse = (HttpWebResponse)webRequest.GetResponse();
} catch (WebException e) {
webResponse = (HttpWebResponse)e.Response;
if (webResponse == null) {
// Handle this.
}
}
using (webResponse) {
// Process the response.
}
using
时,你不需要担心自己调用Dispose
,编译器会为你处理它。 - Kyle Trauberman