我过去使用过一些分析器,但从未发现它们特别容易。也许我选择了不好的,也许我真的不知道我在期待什么!但是我想知道是否有任何“标准”分析器可以简单地插入并工作?我认为我不需要大量详细的报告,只是为了找出主要的黑点。在这一点上,易用性对我来说更重要。
我们正在使用的是 VC++ 2008(我个人运行标准版)。我不认为IDE中有任何工具可以解决这个问题,我看主菜单看不到任何工具?
原文由 Mr. Boy 发布,翻译遵循 CC BY-SA 4.0 许可协议
我过去使用过一些分析器,但从未发现它们特别容易。也许我选择了不好的,也许我真的不知道我在期待什么!但是我想知道是否有任何“标准”分析器可以简单地插入并工作?我认为我不需要大量详细的报告,只是为了找出主要的黑点。在这一点上,易用性对我来说更重要。
我们正在使用的是 VC++ 2008(我个人运行标准版)。我不认为IDE中有任何工具可以解决这个问题,我看主菜单看不到任何工具?
原文由 Mr. Boy 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
VS内置:
如果您有团队版,则可以使用 Visual Studio 分析器。
其他选项:
否则检查这个线程。
轻松创建自己的:
我个人使用基于 Win32 API QueryPerformanceCounter 的内部构建的。您可以在 100 行或更少的代码中制作出漂亮且易于使用的东西。
这个过程很简单:在您要分析的每个函数的顶部创建一个名为 PROFILE_FUNC() 的宏,它将添加到内部管理的统计信息中。然后有另一个名为 PROFILE_DUMP() 的宏,它将输出转储到文本文档。
PROFILE_FUNC() 创建一个对象,该对象将使用 RAII 记录直到对象被销毁的时间量。此 RAII 对象的构造函数和析构函数都将调用
QueryPerformanceCounter
。您还可以将这些行保留在代码中并通过#define PROFILING_ON
控制行为