在引发堆栈溢出异常时在Visual Studio 2010中查看CallStack [英] Viewing CallStack in Visual Studio 2010 when stack overflow exception thrown
本文介绍了在引发堆栈溢出异常时在Visual Studio 2010中查看CallStack的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在抛出stackoverflow异常时查看调用堆栈。(即,我想要指出是什么递归调用导致堆栈溢出)。 调用堆栈已清除,我所能看到的只有"外部代码"。
编辑我遵循了Chris Schmich的建议(如下所示),现在我有了一个如下所示的调用堆栈,这只是我正在编写的一个普通控制台应用程序,请注意,屏幕截图中没有提到main():
Edit2:我遵循了Chris Schmich关于查看不同线程调用堆栈的建议,但我似乎仍然无法查看我的控制台应用程序的调用堆栈,以下是我所看到的:
推荐答案
您看到的[External Code]
框架是因为调试器的Just My Code功能。调试器向您隐藏堆栈帧,因为它们不在您的代码中。有关JMC的一些详细信息,请参阅this blog post。
您可以通过执行以下操作禁用"仅我的代码":
- 调试?选项和设置...?取消选中仅启用我的代码(仅限托管)(&Q)?单击确定
您现在应该能够看到所有堆栈帧。
以JMC为例,当我进入一个启用了JMC的简单C#控制台应用程序时,我只看到解决方案中的代码...
...在禁用JMC的情况下,我也看到了框架代码...
这篇关于在引发堆栈溢出异常时在Visual Studio 2010中查看CallStack的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文