Marshal.AreComObjectsAvailableForCleanup 方法

定义

指示是否可以清除任何上下文中的运行时可调用包装器 (RCW)。

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

返回

如果存在任何可清除的 RCW,则为 true;否则为 false

属性

注解

如果托管代码和本机代码之间存在大量引用,并且具有深层依赖项关系图,则可能需要很长时间才能清理所有对象。 每次运行 GC 时,它都会释放一些 RCW,进而释放基础 COM 对象。 然后,这些 COM 对象将释放其托管引用,并在下次运行 GC 时提供更多可用于清理的对象,这会重新启动该过程。

方法 AreComObjectsAvailableForCleanup 为应用程序提供了一种确定 GC 周期数的方法。收集和 GC。WaitForPendingFinalizer 需要发生才能清理所有内容。

适用于