您的位置:首页 > 编程语言 > C#

C# using语句使用流还需要显示调用Close方法吗?

2017-02-24 09:19 405 查看
查阅了.NET源码中的Stream类
发现其对于IDisposable接口的实现如下

public void Dispose()
{
/* These are correct, but we'd have to fix PipeStream & NetworkStream very carefully.
Contract.Ensures(CanRead == false);
Contract.Ensures(CanWrite == false);
Contract.Ensures(CanSeek == false);
*/

Close();
}注意,此方法是继承自IDisposable接口,且此处该方法并没有写成virtual方法

因此,我们可以得出以下结论:继承自Stream的流调用Dispose和Close方法是等价的,所以在使用using语句来释放流的时候,不需要再显示的调用Close方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c# using stream Close
相关文章推荐