GC.WaitForFullGCApproach GC.WaitForFullGCApproach GC.WaitForFullGCApproach GC.WaitForFullGCApproach Method

Definición

Devuelve el estado de una notificación registrada para determinar si es inminente 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 is imminent.

Sobrecargas

WaitForFullGCApproach() WaitForFullGCApproach() WaitForFullGCApproach() WaitForFullGCApproach()

Devuelve el estado de una notificación registrada para determinar si es inminente 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 is imminent.

WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32)

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

WaitForFullGCApproach() WaitForFullGCApproach() WaitForFullGCApproach() WaitForFullGCApproach()

Devuelve el estado de una notificación registrada para determinar si es inminente 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 is imminent.

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

Devoluciones

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

Ejemplos

En el ejemplo siguiente se muestra cómo usar este método para determinar si se está agotando un completo, la recolección de elementos no utilizados de bloqueo.The following example shows how to use this method to determine whether a full, blocking garbage collection is approaching. Cada vez que el estado de la notificación es Succeeded, el método de usuario OnFullGCApproachNotify se llama para realizar acciones en respuesta a la colección de proximidad.Whenever the status of the notification is Succeeded, the user method OnFullGCApproachNotify is called to perform actions in response to the approaching collection. Este ejemplo de código forma parte de un ejemplo más extenso de notificaciones de recolección de elementos no utilizados tema.This code example is part of a larger example provided for Garbage Collection Notifications topic.

// Check for a notification of an approaching collection.
GCNotificationStatus s = GC::WaitForFullGCApproach();
if (s == GCNotificationStatus::Succeeded)
{
    Console::WriteLine("GC Notifiction raised.");
    OnFullGCApproachNotify();
}
else if (s == GCNotificationStatus::Canceled)
{
    Console::WriteLine("GC Notification cancelled.");
    break;
}
else
{
    // This can occur if a timeout period
    // is specified for WaitForFullGCApproach(Timeout)
    // or WaitForFullGCComplete(Timeout)
    // and the time out period has elapsed.
    Console::WriteLine("GC Notification not applicable.");
    break;
}
// Check for a notification of an approaching collection.
GCNotificationStatus s = GC.WaitForFullGCApproach();
if (s == GCNotificationStatus.Succeeded)
{
    Console.WriteLine("GC Notification raised.");
    OnFullGCApproachNotify();
}
else if (s == GCNotificationStatus.Canceled)
{
    Console.WriteLine("GC Notification cancelled.");
    break;
}
else
{
    // This can occur if a timeout period
    // is specified for WaitForFullGCApproach(Timeout) 
    // or WaitForFullGCComplete(Timeout)  
    // and the time out period has elapsed. 
    Console.WriteLine("GC Notification not applicable.");
    break;
}
' Check for a notification of an approaching collection.
Dim s As GCNotificationStatus = GC.WaitForFullGCApproach
If (s = GCNotificationStatus.Succeeded) Then
    Console.WriteLine("GC Notification raised.")
    OnFullGCApproachNotify()
ElseIf (s = GCNotificationStatus.Canceled) Then
    Console.WriteLine("GC Notification cancelled.")
    Exit While
Else
    ' This can occur if a timeout period
    ' is specified for WaitForFullGCApproach(Timeout) 
    ' or WaitForFullGCComplete(Timeout)  
    ' and the time out period has elapsed. 
    Console.WriteLine("GC Notification not applicable.")
    Exit While
End If

Comentarios

Use la GCNotificationStatus enumeración devuelta por este método para determinar el estado de la notificación de recolección actual que se ha registrado mediante el RegisterForFullGCNotification método.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 usar el WaitForFullGCComplete método para determinar si se ha completado la colección de elementos no utilizados completa.You can also use the WaitForFullGCComplete method to determine whether the full garbage collection has completed.

Cuando se devuelve la enumeración Succeeded, puede hacer tareas como impide que los objetos adicionales que se asigna y provocar una colección con el Collect método.When the enumeration returns Succeeded, you can do tasks such as preventing additional objects from being allocated and inducing a collection yourself with the Collect method. Tenga en cuenta que la notificación no garantiza que una colección de elementos no utilizados completa se produzca, sólo que condiciones han alcanzado el umbral de favorable para una colección de elementos no utilizados completa que se produzca.Note that the notification does not guarantee that a full garbage collection will occur, only that conditions have reached the threshold that are favorable for a full garbage collection to occur.

Este método espera indefinidamente para que obtener una notificación de recolección.This method waits indefinitely for a garbage collection notification to be obtained. Si desea especificar un período de tiempo de espera para el método devolver si no se puede obtener la notificación, utilice el GC.WaitForFullGCApproach(Int32) sobrecarga del método.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 se llama a este método sin especificar un tiempo de espera, puede llamar a la CancelFullGCNotification método si se esperan más de preferido.If you call this method without specifying a time-out, you can call the CancelFullGCNotification method if you are waiting longer than preferred.

Debe seguir este método con una llamada a la WaitForFullGCComplete método para asegurarse de que haya tenido una colección de elementos no utilizados completa.You should follow this method with a call to the WaitForFullGCComplete method to make sure that you have had a full garbage collection. Si solo llama a este método, pueden producirse resultados indeterminados.Calling this method alone causes indeterminate results.

Seguridad

LinkDemand
para plena confianza para el llamador inmediato.for full trust for the immediate caller. Un código de confianza parcial no puede utilizar este miembro.This member cannot be used by partially trusted code.

SecurityCriticalAttribute
requiere plena confianza para el llamador inmediato.requires full trust for the immediate caller. Este miembro no se puede usar código de confianza parcial o transparente.This member cannot be used by partially trusted or transparent code.

Consulte también:

WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32) WaitForFullGCApproach(Int32)

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

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

Parámetros

millisecondsTimeout
Int32 Int32 Int32 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.

Devoluciones

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

Excepciones

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.

Comentarios

Use la GCNotificationStatus enumeración devuelta por este método para determinar el estado de la notificación de recolección actual que se ha registrado mediante el RegisterForFullGCNotification método.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 usar el WaitForFullGCComplete método para determinar si se ha completado la colección de elementos no utilizados completa.You can also use the WaitForFullGCComplete method to determine whether the full garbage collection has completed.

Tenga en cuenta que este método devuelve un valor inmediatamente cada vez que se obtiene un estado de notificación de la colecció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 consigue un estado de notificación de la colección de elementos no utilizados antes de millisecondsTimeout veces, este método devuelve NotApplicable.If a garbage collection notification status is not obtained before millisecondsTimeout times out, this method returns NotApplicable.

Cuando se devuelve la enumeración Succeeded, puede hacer tareas como impide que los objetos adicionales que se asigna y provocar una colección con el Collect método.When the enumeration returns Succeeded, you can do tasks such as preventing additional objects from being allocated and inducing a collection yourself with the Collect method. Tenga en cuenta que la notificación no garantiza que una colección de elementos no utilizados completa se produzca, sólo que condiciones han alcanzado el umbral de favorable para una colección de elementos no utilizados completa que se produzca.Note that the notification does not guarantee that a full garbage collection will occur, only that conditions have reached the threshold that are favorable for a full garbage collection to occur.

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

Debe seguir este método con una llamada a la WaitForFullGCComplete método para asegurarse de que haya tenido una colección de elementos no utilizados completa.You should follow this method with a call to the WaitForFullGCComplete method to make sure that you have had a full garbage collection. Si solo llama a este método, pueden producirse resultados indeterminados.Calling this method alone causes indeterminate results.

Seguridad

LinkDemand
para plena confianza para el llamador inmediato.for full trust for the immediate caller. Un código de confianza parcial no puede utilizar este miembro.This member cannot be used by partially trusted code.

SecurityCriticalAttribute
requiere plena confianza para el llamador inmediato.requires full trust for the immediate caller. Este miembro no se puede usar código de confianza parcial o transparente.This member cannot be used by partially trusted or transparent code.

Consulte también:

Se aplica a