我在VisualStudio中使用SOS.dll来调试我的C#程序。该计划如下。
debug命令是!DumpStackObjects 。
class Program
{
static void Main()
{
Int32 result = f(1);
}
static Int32 f(Int32 i)
{
Int32 j = i + 1;
return j; <===========BreakPoint is here
}
}
在Visual Studio的即时窗口中输入“!dso”命令后,结果如下:
操作系统线程ID:0xf6c(3948)
ESP / REG对象名称
为什么没有?我认为应该有args i和局部变量j。
感谢我回答我天真的问题......
答案 0 :(得分:3)
!dumpstackobject
将堆栈上的引用转储到对象。即您将看不到使用此命令的值类型。使用!clrstack -l
查看当地人(使用-p
查看参数,并使用-a
)。