我正在调查我的应用程序中占用大量内存的原因。使用 !DumpObj 命令,我可以绕过托管对象。但是我如何为原生对象做等价的呢?例如,这个 .NET 对象有一个指向本机代码的指针。我被困在这里......我如何从这里做相当于 !DumpObj 的操作?我有所有的来源和符号。
0:006> !DumpObj 0000000006222a50
Name: Beriliun.GS.Internal.Signer
MethodTable: 000007ff00658548
EEClass: 000007ff00734170
Size: 24(0x18) bytes
(d:\GS\bin\debug\LIBXT.dll)
Fields:
MT Field Offset Type VT Attr Value Name
000007fef02f8448 4000647 8 PTR 0 instance 000000002d7621e0 pSigner
0:006> !DumpObj 000000002d7621e0
<Note: this object has an invalid CLASS field>
Invalid object