我有一个很大的 winform 类,它从一个像这样的小人那里调用:
void login()
{
mainForm f1 = new mainForm();
f1.ShowDialog();
}
登录后主窗体会占用大量内存(我在任务管理器中检查)。关闭主窗体后,程序返回登录窗体。在这一步我再次检查任务管理器,发现我的程序没有释放 mainForm 使用的内存。登录后,我的程序崩溃并显示“内存不足”错误。
我不得不说我测试了 f1.Dispose()、f1=null、GC.Collect() 和我发现的所有其他方法。
它只会在我关闭登录表单时释放内存(它是 Application.Run 中使用的起始类)
我想销毁 mainForm 实例(f1)和这个表单的所有资源,就像我关闭程序时一样。