在引发堆栈溢出异常时在Visual Studio 2010中查看CallStack [英] Viewing CallStack in Visual Studio 2010 when stack overflow exception thrown

查看:12
本文介绍了在引发堆栈溢出异常时在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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆