Thread.DisableComObjectEagerCleanup Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Desativa a limpeza automática de wrappers callable (RCW) de runtime para o thread atual.
public:
void DisableComObjectEagerCleanup();
[System.Security.SecurityCritical]
public void DisableComObjectEagerCleanup();
public void DisableComObjectEagerCleanup();
[<System.Security.SecurityCritical>]
member this.DisableComObjectEagerCleanup : unit -> unit
member this.DisableComObjectEagerCleanup : unit -> unit
Public Sub DisableComObjectEagerCleanup ()
- Atributos
Comentários
Por padrão, o CLR (Common Language Runtime) limpa automaticamente os wrappers callable do runtime. O CLR bombeia mensagens durante a limpeza, o que pode causar problemas de reentrada para alguns aplicativos que atendem aos seguintes critérios incomuns:
O aplicativo faz seu próprio bombeamento de mensagens.
O aplicativo precisa controlar precisamente quando ocorre o bombeamento de mensagens.
Esses aplicativos podem usar o DisableComObjectEagerCleanup método para impedir que o CLR faça recuperação automática de wrappers callable de runtime.
Quando esse método foi chamado em um thread, a limpeza automática não pode ser habilitada novamente para esse thread. Quando o aplicativo estiver pronto para limpar wrappers callable de runtime, use o Marshal.CleanupUnusedObjectsInCurrentContext método para instruir o runtime a limpar todos os wrappers callable de runtime no contexto atual. O bombeamento de mensagens ocorre enquanto o método é executado.