GC.WaitForFullGCComplete Method

Definition

Devuelve el estado de una notificación registrada para determinar si se ha completado una recolección completa de elementos no utilizados bloqueada por parte de Common Language Runtime.Returns the status of a registered notification for determining whether a full, blocking garbage collection by the common language runtime has completed.

Overloads

WaitForFullGCComplete()

Devuelve el estado de una notificación registrada para determinar si se ha completado una recolección completa de elementos no utilizados bloqueada por parte de Common Language Runtime.Returns the status of a registered notification for determining whether a full, blocking garbage collection by the common language runtime has completed.

WaitForFullGCComplete(Int32)

Devuelve el estado de una notificación registrada, en un tiempo de espera especificado, para determinar si se ha completado una recolección completa de elementos no utilizados bloqueada por parte de Common Language Runtime.Returns, in a specified time-out period, the status of a registered notification for determining whether a full, blocking garbage collection by common language the runtime has completed.

WaitForFullGCComplete()

Devuelve el estado de una notificación registrada para determinar si se ha completado una recolección completa de elementos no utilizados bloqueada por parte de Common Language Runtime.Returns the status of a registered notification for determining whether a full, blocking garbage collection by the common language runtime has completed.

public:
 static GCNotificationStatus WaitForFullGCComplete();
public static GCNotificationStatus WaitForFullGCComplete ();
[System.Security.SecurityCritical]
public static GCNotificationStatus WaitForFullGCComplete ();
static member WaitForFullGCComplete : unit -> GCNotificationStatus
Public Shared Function WaitForFullGCComplete () As GCNotificationStatus

Returns

GCNotificationStatus

El estado de la notificación registrada de recolección de elementos no utilizados.The status of the registered garbage collection notification.

Attributes

Examples

En el ejemplo siguiente se muestra cómo utilizar este método para determinar si se ha completado una recolección completa de elementos no utilizados.The following example shows how to use this method to determine whether a full garbage collection has completed. Siempre que se Succeededel estado de la notificación, se llama al método de usuario OnFullGCCompletedNotify para realizar acciones en respuesta a la colección completada.Whenever the status of the notification is Succeeded, the user method OnFullGCCompletedNotify is called to perform actions in response to the completed collection. Este ejemplo de código forma parte de un ejemplo más grande proporcionado para el tema notificaciones de recolección de elementos no utilizados.This code example is part of a larger example provided for Garbage Collection Notifications topic.

// Check for a notification of a completed collection.
s = GC::WaitForFullGCComplete();
if (s == GCNotificationStatus::Succeeded)
{
    Console::WriteLine("GC Notification 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;
}
// Check for a notification of a completed collection.
GCNotificationStatus status = GC.WaitForFullGCComplete();
if (status == GCNotificationStatus.Succeeded)
{
    Console.WriteLine("GC Notification raised.");
    OnFullGCCompleteEndNotify();
}
else if (status == GCNotificationStatus.Canceled)
{
    Console.WriteLine("GC Notification cancelled.");
    break;
}
else
{
    // Could be a time out.
    Console.WriteLine("GC Notification not applicable.");
    break;
}
' Check for a notification of a completed collection.
s = GC.WaitForFullGCComplete
If (s = GCNotificationStatus.Succeeded) Then
    Console.WriteLine("GC Notifiction raised.")
    OnFullGCCompleteEndNotify()
ElseIf (s = GCNotificationStatus.Canceled) Then
    Console.WriteLine("GC Notification cancelled.")
    Exit While
Else
    ' Could be a time out.
    Console.WriteLine("GC Notification not applicable.")
    Exit While
End If

Remarks

Use la enumeración GCNotificationStatus devuelta por este método para determinar el estado de la notificación de recolección de elementos no utilizados actual registrada con el método RegisterForFullGCNotification.Use the GCNotificationStatus enumeration returned by this method to determine the status of the current garbage collection notification that was registered by using the RegisterForFullGCNotification method. También puede utilizar el método WaitForFullGCApproach para determinar si una recolección completa de elementos no utilizados es inminente.You can also use the WaitForFullGCApproach method to determine whether a full garbage collection is imminent.

Cuando la enumeración devuelve Succeeded, puede realizar tareas como reanudar el trabajo y obtener un recuento de la colección con la propiedad CollectionCount.When the enumeration returns Succeeded, you can do tasks such as resuming work and obtaining a collection count with the CollectionCount property.

Este método espera indefinidamente a que se obtenga una notificación de recolección de elementos no utilizados.This method waits indefinitely for a garbage collection notification to be obtained. Si desea especificar un período de tiempo de espera para que el método devuelva si la notificación no se puede obtener, utilice la sobrecarga del método GC.WaitForFullGCApproach(Int32).If you want to specify a time-out period for the method to return if the notification cannot be obtained, use the GC.WaitForFullGCApproach(Int32) method overload. Si llama a este método sin especificar un tiempo de espera, puede llamar al método CancelFullGCNotification si espera más tiempo del preferido.If you call this method without specifying a time-out, you can call the CancelFullGCNotification method if you are waiting longer than preferred.

Esta llamada al método debe ir precedida de una llamada al método WaitForFullGCApproach para asegurarse de que se ha tenido una recolección completa de elementos no utilizados.This method call should be preceded with a call to the WaitForFullGCApproach method to make sure that you have had a full garbage collection. Llamar a este método solo puede producir resultados indeterminados.Calling this method alone can produce indeterminate results.

See also

WaitForFullGCComplete(Int32)

Devuelve el estado de una notificación registrada, en un tiempo de espera especificado, para determinar si se ha completado una recolección completa de elementos no utilizados bloqueada por parte de Common Language Runtime.Returns, in a specified time-out period, the status of a registered notification for determining whether a full, blocking garbage collection by common language the runtime has completed.

public:
 static GCNotificationStatus WaitForFullGCComplete(int millisecondsTimeout);
public static GCNotificationStatus WaitForFullGCComplete (int millisecondsTimeout);
[System.Security.SecurityCritical]
public static GCNotificationStatus WaitForFullGCComplete (int millisecondsTimeout);
static member WaitForFullGCComplete : int -> GCNotificationStatus
Public Shared Function WaitForFullGCComplete (millisecondsTimeout As Integer) As GCNotificationStatus

Parameters

millisecondsTimeout
Int32

Cantidad de tiempo que hay que esperar para obtener un estado de notificación.The length of time to wait before a notification status can be obtained. Especifique -1 para esperar indefinidamente.Specify -1 to wait indefinitely.

Returns

GCNotificationStatus

El estado de la notificación registrada de recolección de elementos no utilizados.The status of the registered garbage collection notification.

Attributes

Exceptions

millisecondsTimeout debe ser no negativo, o bien menor o igual que MaxValue o -1.millisecondsTimeout must be either non-negative or less than or equal to MaxValue or -1.

Remarks

Use la enumeración GCNotificationStatus devuelta por este método para determinar el estado de la notificación de recolección de elementos no utilizados actual registrada con el método RegisterForFullGCNotification.Use the GCNotificationStatus enumeration returned by this method to determine the status of the current garbage collection notification that was registered by using the RegisterForFullGCNotification method. También puede utilizar el método WaitForFullGCApproach para determinar si una recolección completa de elementos no utilizados es inminente.You can also use the WaitForFullGCApproach method to determine whether a full garbage collection is imminent.

Tenga en cuenta que este método vuelve inmediatamente cuando se obtiene un estado de notificación de recolección de elementos no utilizados, independientemente del valor especificado por millisecondsTimeout.Note that this method returns immediately whenever a garbage collection notification status is obtained, regardless of the value specified by millisecondsTimeout. Si no se obtiene un estado de notificación de recolección de elementos no utilizados antes de que millisecondsTimeout agote el tiempo de espera, este método devuelve NotApplicable.If a garbage collection notification status is not obtained before millisecondsTimeout times out, this method returns NotApplicable.

Cuando la enumeración devuelve Succeeded, puede realizar tareas como reanudar el trabajo y obtener un recuento de la colección con la propiedad CollectionCount.When the enumeration returns Succeeded, you can do tasks such as resuming work and obtaining a collection count with the CollectionCount property.

Puede llamar al método CancelFullGCNotification cuando no puede esperar a que transcurra el período de tiempo de espera.You can call the CancelFullGCNotification method when you cannot wait for the time-out period to elapse.

Esta llamada al método debe ir precedida de una llamada al método WaitForFullGCApproach para asegurarse de que se ha tenido una recolección completa de elementos no utilizados.This method call should be preceded with a call to the WaitForFullGCApproach method to make sure that you have had a full garbage collection. Llamar a este método solo puede producir resultados indeterminados.Calling this method alone can produce indeterminate results.

See also

Applies to