Marshal.AreComObjectsAvailableForCleanup Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje, czy w czasie wykonywania dostępne są otoki wywołujące (RCW) z dowolnego kontekstu.
public:
static bool AreComObjectsAvailableForCleanup();
[System.Security.SecurityCritical]
public static bool AreComObjectsAvailableForCleanup ();
public static bool AreComObjectsAvailableForCleanup ();
[<System.Security.SecurityCritical>]
static member AreComObjectsAvailableForCleanup : unit -> bool
static member AreComObjectsAvailableForCleanup : unit -> bool
Public Shared Function AreComObjectsAvailableForCleanup () As Boolean
Zwraca
true
jeśli istnieją jakiekolwiek RCW dostępne do czyszczenia; w przeciwnym razie , false
.
- Atrybuty
Uwagi
Jeśli istnieje wiele odwołań między zarządzanym i natywnym kodem z głębokimi grafami zależności, może to potrwać długo, aż wszystkie obiekty zostaną oczyszczone. Za każdym razem, gdy usługa GC zostanie uruchomiona, zwolni kilka wersji RCW, co z kolei zwolni bazowe obiekty COM. Te obiekty COM będą następnie zwalniać zarządzane odwołania i udostępniać więcej obiektów do czyszczenia przy następnym uruchomieniu GC, co spowoduje ponowne uruchomienie procesu.
Metoda AreComObjectsAvailableForCleanup umożliwia aplikacji określenie liczby cykli GC. Zbieranie i GC. WaitForPendingFinalizers muszą się zdarzyć, aby wyczyścić wszystko.