marshalCleanupError MDA
Nota
Este artigo é específico do .NET Framework. Ele não se aplica a implementações mais recentes do .NET, incluindo o .NET 6 e versões posteriores.
O marshalCleanupError
assistente de depuração gerenciado (MDA) é ativado quando o Common Language Runtime (CLR) encontra um erro ao tentar limpar estruturas temporárias e memória usada para organizar tipos de dados entre limites de código nativo e gerenciado.
Sintomas
Um vazamento de memória ocorre ao fazer transições de código nativo e gerenciado, o estado de tempo de execução, como a cultura de thread, não é restaurado ou ocorrem erros na SafeHandle limpeza.
Motivo
Ocorreu um erro inesperado durante a limpeza de estruturas temporárias.
Resolução
Analise todas as SafeHandle implementações de destruidor, finalizador e marshaller personalizado em busca de erros.
Efeito no tempo de execução
Este MDA não tem efeito sobre o CLR.
Saída
Uma mensagem relatando a operação que falhou durante a limpeza.
Configuração
<mdaConfig>
<assistants>
<marshalCleanupError />
</assistants>
</mdaConfig>