zoukankan      html  css  js  c++  java
  • C#释放内存的方法

    原文:https://blog.csdn.net/zsy619/article/details/79181719

    --------------------- 

    如何释放内存:

    [DllImport("kernel32.dll", EntryPoint = "SetProcessWorkingSetSize")]
    public static extern int SetProcessWorkingSetSize(IntPtr process, int minSize, int maxSize);
    
    /// <summary>
    /// 释放内存
    /// </summary>
    public static void ClearMemory()
    {
         GC.Collect();
         GC.WaitForPendingFinalizers();
         if (Environment.OSVersion.Platform == PlatformID.Win32NT)
         {
             SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle, -1, -1);
         }
    }

    如何获取当前应用占用的内存大小:

    /// <summary>
    /// 释放内存
    /// </summary>
    public static void ClearMemory()
    {
         //获得当前工作进程
         Process proc = Process.GetCurrentProcess();
         long usedMemory = proc.PrivateMemorySize64;
         if (usedMemory > 1024 * 1024 * 20)
         {
             GC.Collect();
             GC.WaitForPendingFinalizers();
             if (Environment.OSVersion.Platform == PlatformID.Win32NT)
             {
                 SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle, -1, -1);
             }
         }
    }
  • 相关阅读:
    SDNU 1311.Binomial Coeffcients
    SDNU 1306.兑数
    SDNU 1272.SL的秘密
    SDNU 1270.超超的难题
    XCode 自动化打包总结
    Xrun 将 app 转化为 IPA
    mac终端下运行shell脚本
    ios 检测应用程序升级问题
    在iis6.0公布asp.net mvc3网站
    IOS 中 NSArray
  • 原文地址:https://www.cnblogs.com/dabexiong/p/9907648.html
Copyright © 2011-2022 走看看