C++ 在框架中分析函数
我使用了一些框架,发现一些函数(例如,Rebuild(param1,param2))有时工作得非常慢 如何收集每个函数调用的信息(用于检测最长的调用和参数)C++ 在框架中分析函数,c++,visual-studio,profiling,C++,Visual Studio,Profiling,我使用了一些框架,发现一些函数(例如,Rebuild(param1,param2))有时工作得非常慢 如何收集每个函数调用的信息(用于检测最长的调用和参数) 修改源代码或在框架外调用函数的建议不合适。我建议您非常困倦()。这是一个非常容易使用的分析工具 它将显示函数中经过的时间。(函数中传递的包含和独占时间,所有时间均以秒为单位,并以应用程序执行的百分比为单位) 您还将拥有函数的callstack 还有一些你自己会发现的东西 您只需运行它并将其附加到您要配置的进程。它不需要(重新)编译任何源
修改源代码或在框架外调用函数的建议不合适。我建议您非常困倦()。这是一个非常容易使用的分析工具
- 它将显示函数中经过的时间。(函数中传递的包含和独占时间,所有时间均以秒为单位,并以应用程序执行的百分比为单位)
- 您还将拥有函数的callstack
- 还有一些你自己会发现的东西
您只需运行它并将其附加到您要配置的进程。它不需要(重新)编译任何源代码。我的第一个想法可能是使用代码覆盖率工具(例如)检查在某些测试情况下哪些代码路径受到压力,在这些情况下,您会观察到这种行为 另外注入的分析代码(例如,CPU时间配置文件的调用次数)将有助于进一步找出瓶颈 这两种技术都不会侵入任何源代码,但需要使用某些编译器标志(GCC)重新编译
我很肯定微软Visual Studio也会提供类似的工具。如果没有独立的外部工具,那就太好了。