转自http://blog.sina.com.cn/s/blog_618abceb010101on.html
1、使用性能测试工具dotTrace 3.0,它能够计算出你程序中那些代码占用内存较多
2、强制垃圾回收3、多dispose,close
4、用timer,每几秒钟调用:SetProcessWorkingSetSize
5、发布的时候选择Release
6、注意代码编写时少产生垃圾,比如String + String就会产生大量的垃圾,可以用StringBuffer.Append
7、this.Dispose();
8、注意变量的作用域,具体说某个变量如果只是临时使用就不要定义成成员变量。GC是根据关系网去回收资源的。
9、检测是否存在内存泄漏的情况,详情可参见:内存泄漏百度百科
致谢及附录:
致谢:我可以感谢XiXiTV么,还有各种TV和桂电在线,还有感谢某某和某某们,自己想吧。
附录:定期清理执行垃圾回收代码:
//在程序中用一个计时器,每隔几秒钟调用一次该函数,打开任务管理器,你会有惊奇的发现
#region 内存回收
[DllImport("kernel32.dll", EntryPoint = "SetProcessWorkingSetSize
public static extern int SetProcessWorkingSetSize
/// <summary>
/// 释放内存
/// </summary>
public static void ClearMemory()
{
GC.Collect();
GC.WaitForPendingFinalizers
if (Environment.OSVersion.Platform == PlatformID.Win32NT)
{
}
}
#endregion