gcUnmanagedToManaged MDA
Примечание.
Эта статья относится к .NET Framework. Он не применяется к более новым реализациям .NET, включая .NET 6 и более поздние версии.
Помощник по отладке управляемого кода (MDA) gcUnmanagedToManaged
вызывает сбор мусора каждый раз, когда поток переходит из неуправляемого в управляемый код.
Симптомы
Приложение, запускающее неуправляемые пользовательские компоненты с помощью модели СОМ и вызова платформы, является причиной недетерминированного нарушения прав доступа в среде CLR.
Причина
Если приложение выполняет неуправляемые пользовательские компоненты, эти компоненты могут повредить кучу сборки мусора. Это приводит к нарушению прав доступа в среде CLR при попытке сборщика мусора пройти граф объекта.
Разрешение
Включение этого помощника уменьшает время между тем, когда неуправляемый компонент повреждает кучу сборки мусора, и тем, когда происходит нарушение прав доступа принудительным выполнением сборки мусора перед каждой управляемой передачей.
Влияние на среду выполнения
Вызывает сборку мусора каждый раз, когда поток переходит из неуправляемого в управляемый код.
Выходные данные
Данный MDA не дает результатов.
Настройка
<mdaConfig>
<assistants>
<gcUnmanagedToManaged/>
</assistants>
</mdaConfig>