栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

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

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

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);
  } 
}



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/230822.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号