marshalCleanupError-MDA

Der marshalCleanupError-MDA (Managed Debugging Assistant, Assistent für verwaltetes Debuggen) wird aktiviert, wenn die Common Language Runtime (CLR) beim Bereinigen von temporären Strukturen und Arbeitsspeicher, die zum Marshalling von Datentypen über die Grenze zwischen nativem und verwaltetem Code verwendet wurden, auf einen Fehler stößt.

Symptome

Beim Übergang von systemeigenem zu verwaltetem Code tritt Speicherverlust auf, der Laufzeitzustand (wie z. B. die Threadkultur) wird nicht wiederhergestellt oder es treten Fehler beim Bereinigen von SafeHandle auf.

Ursache

Beim Bereinigen temporärer Strukturen ist ein unerwarteter Fehler aufgetreten.

Lösung

Überprüfen Sie alle SafeHandle-Destruktoren-, Finalizer- und benutzerdefinierten Marshallerimplementierungen für auf Fehler.

Auswirkungen auf die Laufzeit

Dieser MDA hat keine Auswirkungen auf die CLR.

Ausgabe

Eine Meldung über den während der Bereinigung fehlgeschlagenen Vorgang.

Konfiguration

<mdaConfig>  
  <assistants>  
    <marshalCleanupError />  
  </assistants>  
</mdaConfig>  

Siehe auch