gcUnmanagedToManaged MDA

Not

Bu makale .NET Framework'e özgüdür. .NET 6 ve sonraki sürümleri de dahil olmak üzere daha yeni .NET uygulamaları için geçerli değildir.

Yönetilen gcUnmanagedToManaged hata ayıklama yardımcısı (MDA), bir iş parçacığı yönetilmeyen koddan yönetilen koda her geçişte çöp toplamaya neden olur.

Belirtiler

COM ve platform çağrısı kullanan yönetilmeyen kullanıcı bileşenleri çalıştıran bir uygulama, CLR'de belirsiz bir erişim ihlaline neden oluyor.

Neden

Bir uygulama yönetilmeyen kullanıcı bileşenleri çalıştırıyorsa, bu bileşenler çöp toplanan yığını bozmuş olabilir. Bu, atık toplayıcı nesne grafiğinde gezinmeye çalıştığında CLR'de erişim ihlaline neden olur.

Çözüm

Bu yardımcının etkinleştirilmesi, yönetilmeyen bileşenin çöp toplanan yığını bozması ile her yönetilen geçiş öncesinde bir çöp toplama işleminin gerçekleşmesini zorunlu kılarak erişim ihlalinin ortaya çıkması arasındaki süreyi azaltır.

Çalışma Zamanı üzerindeki etkisi

bir iş parçacığı yönetilmeyen koddan yönetilen koda her geçişte çöp toplamaya neden olur.

Çıktı

Bu MDA çıkış üretmez.

Yapılandırma

<mdaConfig>
  <assistants>
    <gcUnmanagedToManaged/>
  </assistants>
</mdaConfig>

Ayrıca bkz.