.net C# 释放内存 例子

时间:2014-08-08 11:59:05   收藏:0   阅读:237

namespace myCommon
{
    public class SysVar
    {

        [DllImport("kernel32.dll")]
        public static extern bool SetProcessWorkingSetSize(IntPtr handle, int minimumWorkingSetSize, int maximumWorkingSetSize);

        /// <summary>
        /// 释放内存
        /// </summary>
        public static void FlushMemory()
        {
            GC.Collect();
            GC.WaitForPendingFinalizers();
            if (Environment.OSVersion.Platform == PlatformID.Win32NT)
            {
                SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, -1, -1);
            }
        }
    }

}

//使用例子:

        private void xfrmBase_FormClosed(object sender, FormClosedEventArgs e)
        {
            myCommon.SysVar.FlushMemory();
        }

.net C# 释放内存 例子,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!