【问题标题】:Is it possible to see a list of executing functions in Visual Studio while debugging without breaking?调试时是否可以在不中断的情况下查看 Visual Studio 中执行函数的列表?
【发布时间】:2014-02-27 15:12:20
【问题描述】:

我曾使用过 Call StackCall HierarchyProfiler。这些工具都没有给我一个简单的,live“刚刚执行的函数列表”......在工具 Visual Studio 窗口中。当我点击一个按钮或链接来引导我到特定的代码文件和行(如果可用)时,我需要查看一些东西。

我没有找到类似的东西。也许,即使 PDB FULL 已打开,此类信息也不可用。我相信此时我必须编写一个 Visual Studio 2012 加载项或扩展来做我需要的事情,但我在那里也遇到了问题:首先,我无法从任何 @ 获得函数名称987654321@ 除非我暂停调试器或遇到断点。其次,我想要列出的应用程序是一个 MVC 应用程序,它在“WebDev.WebServer40.exe”下作为 DLL 运行。

我认为这将非常简单:从扩展程序中,创建一个工具窗口并记录最后执行的方法以及参数列表。

有什么想法吗?非常感谢提前!

编辑:为了更清楚

【问题讨论】:

  • 您是在寻找执行后哪些函数被点击以查看的列表,或者是哪个函数中哪个线程的时间点快照?在第一种情况下,您应该坚持使用分析器,但要配置感兴趣的功能。其次,Process Explorer(不在 Visual Studio 中)中的线程视图可能会有所帮助
  • 是的,我正在寻找“执行后要查看哪些函数的列表”。但我希望这个列表是实时的。一个具体的例子是:我按 F5 开始调试 MVC Web 应用程序,每次单击链接时,被调用的 MVC Class.Method 都会打印出来。
  • 听起来你的特定问题可能会更好地通过使用依赖注入和 MVC 框架来注入你自己的包装器接口来记录对 MVC 框架对象的调用。
  • Windows 开发,简直就是地狱。您需要的所有工具都不存在。感谢上帝,人们为微软的产品买单。

标签: c# asp.net-mvc visual-studio debugging callstack


【解决方案1】:

如果您有 Visual Studio Ultimate,则可以使用 IntelliTrace。或者,您可以尝试Runtime Flow,但它不能与 VS 调试器同时工作。

【讨论】:

  • 我认为你的回答是目前最好的。我将坚持我的“实时功能列表”的努力。另外,感谢您的收藏文档扩展!
猜你喜欢
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-06
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
相关资源
最近更新 更多