GC.RefreshMemoryLimit Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Instruuje moduł odśmiecania pamięci, aby ponownie skonfigurować się, wykrywając różne limity pamięci w systemie.
public:
static void RefreshMemoryLimit();
public static void RefreshMemoryLimit ();
static member RefreshMemoryLimit : unit -> unit
Public Shared Sub RefreshMemoryLimit ()
Wyjątki
Twardy limit jest zbyt niski. Może się to zdarzyć, jeśli ustalony limit sterty zostanie ustawiony z powodu nowych ustawień usługi AppData lub dorozumianych przez zmiany limitu pamięci kontenera, jest niższy niż to, co zostało już zatwierdzone.
-lub-
Twardy limit jest nieprawidłowy. Może się to zdarzyć, na przykład z ujemnymi procentami twardego limitu sterty.
Uwagi
Oprócz rzeczywistych ustawień limitu pamięci fizycznej i limitu kontenerów te ustawienia konfiguracji można zastąpić:
- GCHeapHardLimit
- GCHeapHardLimitPercent
- GCHeapHardLimitSOH
- GCHeapHardLimitLOH
- GCHeapHardLimitPOH
- GCHeapHardLimitSOHPercent
- GCHeapHardLimitLOHPercent
- GCHeapHardLimitPOHPercent
Zamiast aktualizować zmienną środowiskową (która nie będzie odczytywana), te przesłaniają te ustawienia przy użyciu wartości ulong w pliku AppContext.
Na przykład można użyć AppContext.SetData("GCHeapHardLimit", (ulong) 100 * 1024 * 1024)
polecenia , aby zastąpić GCHeapHardLimit do 100M.
Ten interfejs API obsługuje tylko konfiguracje, które można obsłużyć po załadowaniu środowiska uruchomieniowego. W przypadku konfiguracji, które nie mają żadnego wpływu na systemy 32-bitowe (takie jak GCHeapHardLimit*), ten interfejs API nie będzie go obsługiwać.