iDisposable
Posted themiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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语句.
以上是关于iDisposable的主要内容,如果未能解决你的问题,请参考以下文章
编写高质量代码改善C#程序的157个建议——建议46:显式释放资源需继承接口IDisposable
使用 IDisposable 模式在 C# 中同步对资源的访问的方法