在 Visual Studio 2012 中,我正在使用调试启动应用程序。我打开一些屏幕,然后关闭它。此时,当我查看调用堆栈时,我可以看到我的应用程序的起点、一些打开/关闭屏幕的方法,以及许多不是来自我的应用程序的(外部)调用。我注意到的是,我的应用程序中的许多调用都没有列出,尽管它们已被执行。
我在我的应用程序中放置了一个断点。当应用程序遇到断点时,我开始使用 F11 单步执行代码。基本上它所做的是,它从循环中调用 SomeMethod (断点设置在循环中)。
当我使用 F11 进入 SomeMethod 时,我看到 SomeMethod 在调用堆栈中列出,但是如果我按 F5,然后再次打断点(在循环中),再查看调用堆栈,SomeMethod 没有列出任何更多的。
那么,调用堆栈如何决定在其中显示哪些方法呢?我们如何才能获得已执行的方法的完整列表?