Thread.DisableComObjectEagerCleanup Yöntem

Tanım

Geçerli iş parçacığı için çalışma zamanı çağrılabilir sarmalayıcıların (RCW) otomatik olarak temizlenmesini devre dışıer.

public:
 void DisableComObjectEagerCleanup();
public void DisableComObjectEagerCleanup ();
[System.Security.SecurityCritical]
public void DisableComObjectEagerCleanup ();
member this.DisableComObjectEagerCleanup : unit -> unit
[<System.Security.SecurityCritical>]
member this.DisableComObjectEagerCleanup : unit -> unit
Public Sub DisableComObjectEagerCleanup ()
Öznitelikler

Açıklamalar

Varsayılan olarak, ortak dil çalışma zamanı (CLR), çalışma zamanı çağrılabilir sarmalayıcıları otomatik olarak temizler. CLR, temizleme sırasında iletileri verir ve bu da aşağıdaki olağan dışı ölçütlere uyan birkaç uygulama için yeniden başvuru sorunlarına neden olabilir:

  • Uygulama kendi ileti pompasını yapar.

  • Uygulamanın ileti pompalamanın ne zaman oluştuğunda tam olarak denetlemesi gerekir.

Bu tür uygulamalar CLR'nin çalışma zamanı çağrılabilir sarmalayıcıları otomatik olarak geri DisableComObjectEagerCleanup yüklemesini önlemek için yöntemini kullanabilir.

Bir iş parçacığında bu yöntem çağrıldı olduğunda, bu iş parçacığı için otomatik temizleme yeniden etkinleştiril kullanılamaz. Uygulamanız çalışma zamanı çağrılabilir sarmalayıcıları temizlemeye hazır olduğunda, çalışma zamanının geçerli bağlamdaki tüm çalışma zamanı çağrılabilir sarmalayıcılarını temizlemesini talimatı için Marshal.CleanupUnusedObjectsInCurrentContext yöntemini kullanın. Yöntem yürütülürken ileti pompalama gerçekleşir.

Şunlara uygulanır