处理自定义类:设置NULL VS .Dispose

Rah*_*ain 1 c# idisposable

可能重复:
在类和Dispose()上调用null

只是想要一些关于处置对象的信息.

我创建了一个从IDISPOSIBLE接口继承的Employee类.以下是示例代码

public class Employee : IDisposable 
 {
      private Int32 _RunID;

      public Int32 RunID { get { return _RunID; } set { _RunID = value; } }

        public void Dispose()
        {
            //Dispose(true);
        }
 }
Run Code Online (Sandbox Code Playgroud)

现在我的问题是,它是一个很好的编码实践来处理我们创建和实现/继承IDisposible接口的每个类,即使我已经看到许多其他人直接设置的代码ObjEmployee = null; 所以只是混淆了哪个好设置NULL或用IDisposible接口实现它或以上都没有?

Jes*_*mos 6

这取决于,您是否有需要与您的对象一起摆脱的托管资源(文件句柄,套接字,连接等....)?如果是,那么你需要一个Dispose()如果你的类包含基本类型或只是你不需要处理的信息,并且设置为null将提示GC清除那个内存.