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.WaitForFullGCComplete ()

 

Data di pubblicazione: ottobre 2016

Restituisce lo stato di una notifica registrata per determinare se una procedura completa di Garbage Collection bloccante è stata portata a termine da Common Language Runtime.

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

[SecurityCriticalAttribute]
public static GCNotificationStatus WaitForFullGCComplete()

Valore restituito

Type: System.GCNotificationStatus

Stato della notifica dell'operazione di Garbage Collection registrata.

Utilizzare il GCNotificationStatus enumerazione restituito da questo metodo per determinare lo stato della notifica dell'operazione di garbage corrente che è stato registrato usando il RegisterForFullGCNotification metodo. È inoltre possibile utilizzare il WaitForFullGCApproach metodo per determinare se è imminente una garbage collection completa.

Quando l'enumerazione restituisce Succeeded, è possibile eseguire attività come riprendere il lavoro e ottenere un conteggio di raccolta con il CollectionCount proprietà.

Questo metodo attende indefinitamente per ottenere una notifica di garbage collection. Se si desidera specificare un periodo di timeout per il metodo restituire se non è possibile ottenere la notifica, utilizzare il GC.WaitForFullGCApproach(Int32) overload del metodo. Se si chiama questo metodo senza specificare un timeout, è possibile chiamare il CancelFullGCNotification metodo se si resta in attesa più preferito.

Questa chiamata al metodo deve essere preceduta da una chiamata al WaitForFullGCApproach per verificare che si sia verificata una garbage collection completa. Chiamare questo metodo solo può produrre risultati imprevisti.

Nell'esempio seguente viene illustrato come utilizzare questo metodo per determinare se un'operazione completa di garbage collection è stata completata. Ogni volta che lo stato della notifica è Succeeded, il metodo dell'utente OnFullGCCompletedNotify viene chiamato per eseguire azioni in risposta alla raccolta completata. Questo esempio di codice fa parte di un esempio più esaustivo disponibile per Garbage Collection Notifications argomento.

// Check for a notification of a completed collection.
s = GC.WaitForFullGCComplete();
if (s == GCNotificationStatus.Succeeded)
{
    Console.WriteLine("GC Notifiction raised.");
    OnFullGCCompleteEndNotify();
}
else if (s == GCNotificationStatus.Canceled)
{
    Console.WriteLine("GC Notification cancelled.");
    break;
}
else
{
    // Could be a time out.
    Console.WriteLine("GC Notification not applicable.");
    break;
}

LinkDemand

for full trust for the immediate caller. This member cannot be used by partially trusted code.

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

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