在我的WinCE中,我有一个WinForm:
public class SyncForm : Form
{
IDisposable someResource;
public SyncForm()
{
someResource = new SomeResource();
}
private void SyncForm_Closed(object sender, EventArgs e)
{
someResource.Dispose();
}
}
当应用程序正确关闭时,它可以正常工作,但是如果发生未处理的异常,则不会清除资源。即使我的应用程序崩溃,我应该在哪里确保它被调用?
最佳答案
转到设计器文件。在顶部附近将是覆盖的Dispose
方法。在该Dispose方法中处理该资源。这是设计器文件中唯一可以由您编辑的方法,因此Visual Studio不会覆盖您在其中编写的内容。就是说,如果您担心的话,可以在普通代码中编写一个单独的方法,只需从Dispose
方法调用即可。
关于c# - 如何确定要清除的非托管资源,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20053237/