【发布时间】:2010-07-06 16:33:20
【问题描述】:
使用sos,我可以获得特定类的方法表条目列表:
!DumpMT -MD 1d3c58 未加载 mscorwks.dll 的 PDB 符号 EE类:001d195c 模块:001d2f2c 名称:Class1.B mdToken:02000005 基数:0xc 组件大小:0x0 IFaceMap 中的 IFace 数量:0 VTable 中的插槽:7 -------------------------------------- 方法描述表 条目 MethodDesc JIT 名称 691f6a90 69071248 PreJIT System.Object.ToString() 691f6ab0 69071250 PreJIT System.Object.Equals(System.Object) 691f6b20 69071280 PreJIT System.Object.GetHashCode() 692674c0 690712a4 PreJIT System.Object.Finalize() 001dc088 001d3c34 无 Class1.B.M() 001dc090 001d3c40 无 Class1.B.N() 001dc098 001d3c4c JIT Class1.B..ctor()
但我无法弄清楚 sos 如何将表条目与MethodDesc 匹配 - 在内存中的方法表周围戳一下只会给出指向 JIT 存根的条目值。我不知道如何从那里获得MethodDescs。有人有什么想法吗?
【问题讨论】: