2 Stimmen

Entsorgung von CCWs und RCWs in einem gemischten verwalteten/unverwalteten Prozess

Ich habe eine gemischte verwaltete/unverwaltete Umgebung (Visual Studio und ReSharper) und ich vermute ein CCW- oder RCW-Leck. Gibt es eine Möglichkeit, alle derzeit zugewiesenen Wrapper zu löschen und ihre Quelle/Ziel zu identifizieren? Ich habe WinDbg, SOS & SOSEx, also kann ich die Gesamtzahl der RCWs und CCWs mit dem !syncblk Befehl sehen. Ich möchte nur die Objekte sehen, damit ich !gcroot für sie aufrufen und andere Verdächtige untersuchen kann.

2voto

Curt Hagenlocher Punkte 20150

Sie sollten in der Lage sein, Folgendes zu verwenden !dumpheap um dies zu tun. !dumpheap -stat können Sie die Namen der Typen finden (wenn Sie sie nicht bereits kennen) und dann !dumpheap -type {typename} würde Ihnen die einzelnen Objektadressen liefern, die Sie an !gcroot .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X