GC.RefreshMemoryLimit Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Indica al Garbage Collector di riconfigurarsi rilevando i vari limiti di memoria nel sistema.
public:
static void RefreshMemoryLimit();
public static void RefreshMemoryLimit();
static member RefreshMemoryLimit : unit -> unit
Public Shared Sub RefreshMemoryLimit ()
Eccezioni
Il limite rigido è troppo basso. Ciò può verificarsi se il limite rigido dell'heap impostato dall'aggiornamento, a causa di nuove impostazioni AppData o implicite nelle modifiche al limite di memoria del contenitore, è inferiore a quello già eseguito.
oppure
Il limite rigido non è valido. Ciò può verificarsi, ad esempio, con percentuali di limite rigido dell'heap negativo.
Commenti
Oltre alle impostazioni effettive del limite di memoria fisica e del limite di contenitori, queste impostazioni di configurazione possono essere sovrascritte:
- GCHeapHardLimit
- GCHeapHardLimitPercent
- GCHeapHardLimitSOH
- GCHeapHardLimitLOH
- GCHeapHardLimitPOH
- GCHeapHardLimitSOHPercent
- GCHeapHardLimitLOHPercent
- GCHeapHardLimitPOHPercent
Anziché aggiornare la variabile di ambiente (che non verrà letta), queste impostazioni sostituiscono queste impostazioni usando un valore ulong in AppContext.
Ad esempio, è possibile usare AppContext.SetData("GCHeapHardLimit", (ulong) 100 * 1024 * 1024) per eseguire l'override di GCHeapHardLimit su 100M.
Questa API gestisce solo le configurazioni che possono essere gestite quando viene caricato il runtime. Per le configurazioni che non hanno alcun effetto sui sistemi a 32 bit (come quelli GCHeapHardLimit*), questa API non la gestirà.