Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo GC.Collect (Int32, GCCollectionMode, Boolean, Boolean)

 

Data di pubblicazione: ottobre 2016

Forza un'operazione di Garbage Collection dalla generazione 0 fino a una determinata generazione, in un momento specificato dal valore di GCCollectionMode, con valori che specificano se la raccolta deve essere bloccante e compattante.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

public static void Collect(
	int generation,
	GCCollectionMode mode,
	bool blocking,
	bool compacting
)

Parametri

generation
Type: System.Int32

Numero della generazione meno recente da sottoporre a Garbage Collection.

mode
Type: System.GCCollectionMode

Valore di enumerazione che specifica se l'operazione di Garbage Collection è forzata (GCCollectionMode.Default o GCCollectionMode.Forced) o ottimizzata (GCCollectionMode.Optimized).

blocking
Type: System.Boolean

true per eseguire una procedura di Garbage Collection; false per eseguire una procedura di Garbage Collection in background, se possibile. Per altre informazioni, vedere la sezione Osservazioni.

compacting
Type: System.Boolean

true per comprimere l'heap degli oggetti piccoli; false per la sola organizzazione. Per altre informazioni, vedere la sezione Osservazioni.

Se blocking è false, il Garbage Collector decide di eseguire in background o una garbage collection bloccante. Se compacting è true, esegue una garbage collection bloccante.

Se compacting è true, il runtime comprime l'heap oggetti piccoli (SOH). L'heap oggetti grandi (LOH) non viene compattato a meno che il GCSettings.LargeObjectHeapCompactionMode è impostata su GCLargeObjectHeapCompactionMode.CompactOnce. Si noti che questo include tutti i blocchi di garbage collection, non appena completa blocco delle garbage collection.

È possibile chiamare il Collect(Int32, GCCollectionMode, Boolean, Boolean) metodo per ridurre l'heap gestito per il più piccolo possibile di dimensioni, come illustrato nel frammento di codice seguente.

GCSettings.LargeObjectHeapCompactionMode = GCLargeObjectHeapCompactionMode.CompactOnce;
GC.Collect(2, GCCollectionMode.Forced, true, true);

Specifica di true per il compacting argomento garantisce una compressione, completa di garbage collection bloccante. L'impostazione di GCSettings.LargeObjectHeapCompactionMode proprietà GCLargeObjectHeapCompactionMode.CompactOnce assicura che il rapporto di integrità sia l'heap oggetti grandi vengono compattate.

.NET Framework
Disponibile da 4.6
Torna all'inizio
Mostra: