Condividi tramite


GCLatencyMode Enumerazione

Definizione

Regola il momento in cui il Garbage Collector accede all'applicazione.

public enum class GCLatencyMode
public enum GCLatencyMode
[System.Serializable]
public enum GCLatencyMode
type GCLatencyMode = 
[<System.Serializable>]
type GCLatencyMode = 
Public Enum GCLatencyMode
Ereditarietà
GCLatencyMode
Attributi

Campi

Batch 0

Disabilita la concorrenza della procedura di Garbage Collection e recupera gli oggetti in una chiamata batch. Si tratta della modalità più intrusiva. Questa modalità è progettata per la massima velocità effettiva a discapito della capacità di risposta.

Interactive 1

Abilita la simultaneità della procedura di Garbage Collection e recupera gli oggetti mentre l'applicazione è in esecuzione. Si tratta della modalità predefinita per la procedura di Garbage Collection su una workstation ed è meno intrusiva di Batch. È un compromesso tra capacità di risposta e velocità effettiva. Questa modalità equivale alla procedura di Garbage Collection in una workstation simultanea.

LowLatency 2

Abilita una procedura di Garbage Collection che è più conservativa nel recuperare oggetti. Le raccolte complete si verificano solo se il sistema è in condizioni di utilizzo elevato della memoria mentre le raccolte generazione 0 e generazione 1 possono verificarsi con maggiore frequenza. Questa modalità non è disponibile per il Garbage Collector del server.

NoGCRegion 4

Indica che l'operazione di Garbage Collection viene sospesa mentre l'app esegue un percorso critico.

NoGCRegion è un valore di sola lettura, di conseguenza non è possibile assegnare il valore NoGCRegion alla proprietà LatencyMode. Per specificare la modalità di eliminazione della latenza delle aree di Garbage Collection è necessario chiamare il metodo TryStartNoGCRegion, mentre per terminarla è necessario chiamare il metodo EndNoGCRegion().

SustainedLowLatency 3

Abilita la procedura di Garbage Collection che tenta di ridurre la latenza in un periodo prolungato. L'agente di raccolta tenta di eseguire solo le raccolte di generazione 0, generazione 1 e le raccolte di generazione 2 simultanee. Il blocco completo delle raccolte può ancora verificarsi se il sistema è in condizioni di pressione della memoria.

Commenti

È possibile modificare l'intrusività di Garbage Collection nell'applicazione impostando la LatencyMode proprietà su qualsiasi GCLatencyMode valore di enumerazione, ad eccezione GCLatencyMode.NoGCRegiondi . È anche possibile determinare la modalità di latenza corrente di Garbage Collector recuperando il valore della GCSettings.LatencyMode proprietà.

Per informazioni su come le impostazioni di configurazione di runtime per Garbage Collection influiscono sul valore predefinito per questa enumerazione, vedere Modalità di latenza .

La GCLatencyMode.Batch modalità esegue l'override dell'impostazione <gcConcurrent> di configurazione del runtime. Se l'elemento abilita l'operazione <gcConcurrent> di Garbage Collection simultanea, il passaggio alla modalità Batch impedisce ulteriori raccolte simultanee.

Si applica a

Vedi anche