博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# winform在关闭窗体的时候及时释放内存问题
阅读量:7090 次
发布时间:2019-06-28

本文共 791 字,大约阅读时间需要 2 分钟。

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

转载于:https://www.cnblogs.com/qiantao/p/9849882.html

你可能感兴趣的文章
npoi导入--从varchar数据类型到datetime数据类型转换产生一个超出范围的值问题
查看>>
Docker运行Nginx服务器
查看>>
Java Socket client端
查看>>
verilog中符号位的扩展问题
查看>>
看到的关于虚函数继承及虚继承解释比较好的文章的复制
查看>>
安装Lavarel过程中遇到的几个问题
查看>>
利用apache的文件上传及进度条实现
查看>>
pandas一些基本操作(DataFram和Series)_4
查看>>
this的五种指法
查看>>
POJ 1511 Invitation Cards(逆向思维 SPFA)
查看>>
Android应用程序支持安装到SD卡
查看>>
hibernate.properties
查看>>
34hibernate_fetch_5_set_subselect
查看>>
七,移植linux-3.19内核
查看>>
splay(1区间翻转区间最值与区间修改)
查看>>
通过 openURL 方法跳转至设置 - iOS
查看>>
自定义listVew +simpleAdapter
查看>>
从win7到mac os再到win10,体验总结
查看>>
函数名的使⽤以及第⼀类对象 闭包 迭代器
查看>>
leetcode986
查看>>