至于怎么降低内存使用,要先明确哪些内存对象或方法占用内存高,再进行优化。
至于回收枝段内存,这个你可以不用考虑,只要记得尽量少创建大的局部变量,如果有大的变量,并且使用的位置多的话,就定义成全局的,再不使用时睁漏,对他进行清空就可以。
内存优悉搭烂化还有很多内容,自己做几次就明白了。
在C# winform应用程序中,用以下代码可消销以进行一些内存使用的优化
复制代码 代码如下:
using System
using System.Diagnostics
using System.Runtime.InteropServices
///
/// 包含各种内存管理、优化的方法
///
public class Memory
{
private static readonly Version myVersion = new Version(1, 0)
///
/// 将当前进程的.内存并碰占用尺寸设置到最小
///
/// 0为成功,-1为失败
public static int SetProcessMemoryToMin()
{
return SetProcessMemoryToMin(Process.GetCurrentProcess().Handle)
}
///
/// 将内存占用尺寸设置到最小
///
/// 需要设置拿蔽游内存使用范围的程序进程句柄,一般为当前进程, 如:System.Diagnostics.Process.GetCurrentProcess().Handle
/// 0为成功,-1为失败
public static int SetProcessMemoryToMin(IntPtr SetProcess)
{
if (Environment.OSVersion.Platform == PlatformID.Win32NT)
{
return SetProcessWorkingSetSize(SetProcess, -1, -1)
}
return -1
}
[DllImport("kernel3 2.dll")]
private static extern int SetProcessWorkingSetSize(IntPtr hProcess, int dwMinimumWorkingSetSize, int dwMaximumWorkingSetSize)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)