.Net Client, WinForm or WPF内存使用控制的代码
2010-06-02 09:42
417 查看
class MemoryClearService { private static System.Threading.Timer timer; public void Start() { timer = new Timer(Callback, null, TimeSpan.FromSeconds(60), TimeSpan.FromSeconds(30)); }
static void Callback(object state) { MemoryUtil.FlushMemory(); } }
/// <summary> /// ref: http://blog.csdn.net/jingang123gz/archive/2008/07/16/2662975.aspx /// </summary> class MemoryUtil { [DllImport("kernel32.dll")] public static extern bool SetProcessWorkingSetSize(IntPtr proc, int min, int max);
public static void FlushMemory() { GC.Collect(); GC.WaitForPendingFinalizers(); if (Environment.OSVersion.Platform == PlatformID.Win32NT) { SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, -1, -1); } } }
static void Callback(object state) { MemoryUtil.FlushMemory(); } }
/// <summary> /// ref: http://blog.csdn.net/jingang123gz/archive/2008/07/16/2662975.aspx /// </summary> class MemoryUtil { [DllImport("kernel32.dll")] public static extern bool SetProcessWorkingSetSize(IntPtr proc, int min, int max);
public static void FlushMemory() { GC.Collect(); GC.WaitForPendingFinalizers(); if (Environment.OSVersion.Platform == PlatformID.Win32NT) { SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, -1, -1); } } }
相关文章推荐
- 使用不安全代码将 Bitmap 位图转为 WPF 的 ImageSource 以获得高性能和持续小的内存占用
- 怎样在WPF/XAML中使用Winform中的控件(如PictureBox)?
- WPF中Style文件的引用——使用xaml代码或者C#代码动态加载
- 代码实现cpu的检测和内存使用情况
- c#中跨线程调用windows窗体控件 .我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。
- iOS开发中使用代码控制横竖屏的切换
- PHP5中使用DOM控制XML实现代码
- wpf中后台代码动态控制Storyboard(一)
- 前端代码回放:使用animation-delay来控制动画元素的动画起始位置
- Android中使用代码控制Wifi及数据连接网络开关
- Google的SVN免费代码托管(版本控制)使用教程【图文教程】
- 使用C#调用系统API实现内存注入的代码
- 使用Java代码控制CPU占用率
- WPF 使用ComponentResourceKey,隐藏代码,generic创建项目共享Resource
- 使用代码控制ScrollView的contentSize
- java获得当前系统内存及硬盘使用情况的代码
- Linux 下使用 cgroup 控制进程的cpu,内存
- WPF使用代码进行绑定
- WPF中使用RenderTransformOrigin来控制动画的起点
- WPF使用Path画圆的一个示例代码