Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Note
Este artigo é específico para .NET Framework. Ele não se aplica a implementações mais recentes do .NET, incluindo o .NET 6 e versões posteriores.
O gcUnmanagedToManaged MDA (assistente de depuração gerenciada) causa uma coleta de lixo sempre que um thread faz a transição de código não gerenciado para gerenciado.
Symptoms
Um aplicativo que executa componentes de usuário não gerenciados usando COM e invocação de plataforma está causando uma violação de acesso não determinística no CLR.
Cause
Se um aplicativo estiver executando componentes de usuário não gerenciados, esses componentes poderão ter corrompido o heap coletado por lixo. Isso causa uma violação de acesso no CLR quando o coletor de lixo tenta percorrer o grafo do objeto.
Resolução
Habilitar esse assistente reduz o tempo entre quando o componente não gerenciado corrompe o heap coletado por lixo e quando a violação de acesso acontece forçando uma coleta de lixo a ocorrer antes de cada transição gerenciada.
Efeito no Runtime
Causa uma coleta de lixo sempre que um thread faz a transição de código não gerenciado para gerenciado.
Saída
Esse MDA não produz nenhuma saída.
Configuração
<mdaConfig>
<assistants>
<gcUnmanagedToManaged/>
</assistants>
</mdaConfig>