将对象设置为null vs Dispose()
我对CLR和GC的工作方式很着迷(我正在通过C#,Jon Skeet的书籍/帖子等阅读CLR来扩展我的知识)。
无论如何,说:有什么区别:
MyClass myclass = new MyClass();myclass = null;
或者,通过使MyClass实现IDisposable和析构函数并调用Dispose()?
此外,如果我有一个带有using语句的代码块(例如下面的代码),如果我单步执行代码并退出using块,那么对象是在处理垃圾收集时发生的吗?如果我在使用块中调用Dispose()会发生什么?
using (MyDisposableObj mydispobj = new MyDisposableObj()){}
流类(例如BinaryWriter)有一个Finalize方法吗?我为什么要用它?
茅侃侃
明月笑刀无情