Thread.DisableComObjectEagerCleanup Метод

Определение

Отключает автоматическую очистку вызываемых оболочки среды выполнения (RCW) для текущего потока.

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 ()
Атрибуты

Комментарии

По умолчанию среда CLR автоматически очищает вызываемые оболочки среды выполнения. ClR насосы сообщений во время очистки, которые могут вызвать проблемы повторного входа для нескольких приложений, которые соответствуют следующим необычным критериям:

  • Приложение выполняет собственные перекачки сообщений.

  • Приложение должно точно контролировать, когда происходит перекачка сообщений.

Такие приложения могут использовать DisableComObjectEagerCleanup метод, чтобы предотвратить автоматическое восстановление вызываемых оболочки среды выполнения среды CLR.

При вызове этого метода в потоке автоматическая очистка не может быть включена повторно для этого потока. Когда приложение готово к очистке вызываемых оболочки среды выполнения, используйте Marshal.CleanupUnusedObjectsInCurrentContext метод, чтобы указать среде выполнения очистить все вызываемые оболочки среды выполнения в текущем контексте. При выполнении метода происходит перекачка сообщений.

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