当前位置: 移动技术网 > IT编程>开发语言>.net > C# winform在关闭窗体的时候及时释放内存问题

C# winform在关闭窗体的时候及时释放内存问题

2018年10月26日  | 移动技术网IT编程  | 我要评论

艾比盖尔和布莱塔妮,天龙八部32888卡,snatchly

winform中如果每次打开的窗体都是通过new出来的,发现几次过后就会出现提示”内存不足“问题,那么在关闭窗体的时候怎么处理可以及时释放内存?dispose方法可能也无法解决这个问题。我们可以每次在关闭窗体的时候刷新存储器来彻底释放内存。

using system;
using system.collections.generic;
using system.diagnostics;
using system.drawing;
using system.io;
using system.runtime.interopservices;
using system.windows.forms;

[dllimport("kernel32.dll")]
private static extern bool setprocessworkingsetsize(intptr process, int minsize, int maxsize);
//关闭窗体按钮 
private void btnreturn_click(object sender, eventargs e)
{
  this.close();
  flushmemory();
}
//刷新存储器
private static void flushmemory()
{
  gc.collect();
  gc.waitforpendingfinalizers();
  if (environment.osversion.platform == platformid.win32nt)
  {
    setprocessworkingsetsize(process.getcurrentprocess().handle, -1, -1);
  } 
}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网