如何使实例类需要方法调用?

时间:2019-04-10 21:52:49

标签: c#

我有一个处理某些非托管代码的非静态类,我的类继承了IDisposable,这要求该类实现Dispose()方法。我该如何要求在该类的实例上调用Dispose(),而不仅仅是在类本身中实现?

public class MyClass : IDisposable
{
    //Some fields and methods

    public void Dispose()
    {
        //Code that frees unmanaged resourses
    }
}

在我的主要方法中:

public void main()
{
    var myClassInstance = new MyClass();

    //Some code that does stuff with myClassInstance

    //I forget here to call myClassInstance.Dispose();

}

我现在想受到警告。 例如:“您尚未在myClassInstance上调用Dispose”。

1 个答案:

答案 0 :(得分:-1)

将消息放入析构函数〜MyClass中,并使用[Debug]属性对其进行标记。您将无法控制何时调用它,但是当其中一个第一次被垃圾回收时,您将收到消息。