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

Возвращаемое значение

true Если для очистки доступны какие-либо RCW; falseв противном случае .

Атрибуты

Комментарии

Если существует много ссылок между управляемым и машинным кодом с глубокими графами зависимостей, это может занять много времени для очистки всех объектов. Каждый раз при запуске GC он освобождает некоторое количество RCW, что, в свою очередь, освобождает базовые COM-объекты. Затем эти COM-объекты будут выпускать управляемые ссылки и сделать больше объектов доступными для очистки при следующем запуске GC, который запускает процесс снова.

Этот AreComObjectsAvailableForCleanup метод позволяет приложению определить, сколько циклов GC. Сбор и сборка сборок. WaitForPendingFinalizers необходимо выполнить, чтобы очистить все.

Применяется к