.net 什么';这是StackFrame.GetNativeOffset()的用法吗?
.net 什么';这是StackFrame.GetNativeOffset()的用法吗?,.net,reflection,il,.net,Reflection,Il,StackFrame类具有GetILOffset和GetNativeOffset方法。我知道它们是干什么用的。但我无法想象本机偏移量有什么用处。它取决于JIT,并且每次执行代码时都可能不同。此外,由于它是在执行机器上临时编译的,因此开发人员以后无法对其进行分析 是否存在本机偏移量可以告诉IL偏移量(单独)不能告诉的任何情况?是否存在本机偏移量可以告诉IL偏移量(单独)不能告诉的任何情况 GetNativeOffset方法将偏移量返回到内存中的本机即时代码GetILOffset方法返回内存中MSI
StackFrame
类具有GetILOffset
和GetNativeOffset
方法。我知道它们是干什么用的。但我无法想象本机偏移量有什么用处。它取决于JIT,并且每次执行代码时都可能不同。此外,由于它是在执行机器上临时编译的,因此开发人员以后无法对其进行分析
是否存在本机偏移量可以告诉IL偏移量(单独)不能告诉的任何情况?是否存在本机偏移量可以告诉IL偏移量(单独)不能告诉的任何情况
GetNativeOffset
方法将偏移量返回到内存中的本机即时代码GetILOffset
方法返回内存中MSIL代码的偏移量
是的,基本上总是这样,因为它们都指向一个不同的偏移量,但另一方面,不,正如(就像你说的)它可以随时改变
我见过更多的人使用
GetILOffset
然后GetNativeOffset
,老实说,我见过的唯一一次使用GetNativeOffset
实际上是在.NET框架本身内部。它是模糊的,可能有助于注释小型转储。