我在程序中使用以下代码,还需要调用response.close()吗?或者FtpWebResponse IDisposable实现是否关闭响应?
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
}所以基本上,我需要这样做吗?
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
response.close();
}发布于 2013-10-24 15:01:27
不,你不需要打电话给Close,因为Dispose已经这么做了。FtpWebResponse是从WebResponse继承而来的,它显式地实现了Dispose,这在内部称为Close。
WebResponse.cs代码来自:TFS/Dev10/Releases/RTMRel/ndp/fx/src/Net/System/Net/WebResponse@cs/1305376/WebResponse@cs
/// <internalonly>
void IDisposable.Dispose() {
try
{
Close();
OnDispose();
}
catch { }
}https://stackoverflow.com/questions/19569275
复制相似问题