Marshal.AreComObjectsAvailableForCleanup Yöntem

Tanım

Herhangi bir bağlamdan çalışma zamanı çağrılabilen sarmalayıcıların (RCW) temizleme için kullanılabilir olup olmadığını gösterir.

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

Döndürülenler

true temizleme için kullanılabilecek RCW'ler varsa; aksi takdirde , false.

Öznitelikler

Açıklamalar

Derin bağımlılık grafikleri olan yönetilen ve yerel kod arasında çok fazla başvuru varsa, tüm nesnelerin temizlenmesi uzun sürebilir. Gc her çalıştırıldığında bir miktar RCW boşaltılır ve bu da temel com nesnelerini serbest bırakır. Bu COM nesneleri daha sonra yönetilen başvurularını serbest bırakır ve gc bir sonraki çalıştırıldığında temizleme için daha fazla nesne sağlar ve bu da işlemi yeniden başlatır.

yöntemi, AreComObjectsAvailableForCleanup uygulamanın kaç GC döngüsü olduğunu belirlemesi için bir yol sağlar. Toplama ve GC. Her şeyi temizlemek için WaitForPendingFinalizer'ların gerçekleşmesi gerekir.

Şunlara uygulanır