Freigeben über


Marshal.AreComObjectsAvailableForCleanup Methode

Definition

Gibt an, ob Runtime Callable Wrappers (RCWs) aus einem beliebigen Kontext zur Bereinigung verfügbar sind.

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

Gibt zurück

true, wenn RCWs zur Bereinigung verfügbar sind, andernfalls false.

Attribute

Hinweise

Wenn es viele Verweise zwischen verwaltetem und nativem Code mit tiefen Abhängigkeitsdiagrammen gibt, kann es lange dauern, bis alle Objekte bereinigt sind. Jedes Mal, wenn ein GC ausgeführt wird, gibt er eine gewisse Anzahl von RCWs frei, wodurch wiederum die zugrunde liegenden COM-Objekte freigegeben werden. Diese COM-Objekte geben dann ihre verwalteten Verweise frei und stellen weitere Objekte für die Bereinigung zur Verfügung, wenn eine GC das nächste Mal ausgeführt wird, wodurch der Prozess erneut gestartet wird.

Die AreComObjectsAvailableForCleanup -Methode bietet der Anwendung eine Möglichkeit, zu bestimmen, wie viele GC-Zyklen vorhanden sind. Sammeln und GC. WaitForPendingFinalizers müssen durchgeführt werden, um alles zu bereinigen.

Gilt für: