GC.RefreshMemoryLimit 方法

定义

指示垃圾回收器通过检测系统上的各种内存限制来重新配置自身。

public:
 static void RefreshMemoryLimit();
public static void RefreshMemoryLimit ();
static member RefreshMemoryLimit : unit -> unit
Public Shared Sub RefreshMemoryLimit ()

例外

硬性限制太低。 如果刷新将设置的堆硬限制(无论是由于新的 AppData 设置或容器内存限制更改所隐含)低于已提交的内容,则可能会发生这种情况。

-或-

硬限制无效。 例如,对于负堆硬限制百分比,可能会发生这种情况。

注解

除了实际的物理内存限制和容器限制设置外,还可以覆盖以下配置设置:

     - GCHeapHardLimit
     - GCHeapHardLimitPercent
     - GCHeapHardLimitSOH
     - GCHeapHardLimitLOH
     - GCHeapHardLimitPOH
     - GCHeapHardLimitSOHPercent
     - GCHeapHardLimitLOHPercent
     - GCHeapHardLimitPOHPercent

它们不会更新不会) 读取的环境变量 (,而是使用 AppContext 中的 ulong 值替代这些设置。

例如,可以使用 AppContext.SetData("GCHeapHardLimit", (ulong) 100 * 1024 * 1024) 将 GCHeapHardLimit 重写为 100M。

此 API 仅处理加载运行时时可以处理的配置。 对于对 32 位系统没有任何影响 (配置(如 GCHeapHardLimit*) ),此 API 不会处理它。

适用于