iDisposable

大家都知道, .NET是分托管和非托管.

当我们要释放一些内存的时候, 我们可以使用IDisposable. 支持IDisposable接口的对象必须实现Dispose()方法.

但是c# 允许使用一种可以优化使用这个方法的结构. Using 关键字.

            Program program = new Program();

            using (program)
            {
                // Code here.
            }

Using的职责

在编译阶段, 编译器会自动将using语句生成try-finally语句.  并且在finally块中调用Dispose method来清理资源. 所以, using 语句等效于try-finally语句.

原文地址:https://www.cnblogs.com/TheMiao/p/9733844.html