我有一个混合的托管/非托管环境(Visual Studio和ReSharper),我怀疑CCW或RCW泄漏。有没有办法转储所有当前分配的包装器并识别它们的源/目标?我有WinDbg,SOS& SOSEx,所以我可以使用!syncblk命令查看RCW和CCW的总数。我只是想看到对象,所以我可以打电话给他们gcroot,然后检查嫌疑人。
答案 0 :(得分:2)
您应该可以使用!dumpheap
来执行此操作。 !dumpheap -stat
会让你找到类型名称(如果你还不知道它们),然后!dumpheap -type {typename}
将为你提供可以传递给!gcroot
的单个对象地址。