Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在框架中分析函数_C++_Visual Studio_Profiling - Fatal编程技术网

C++ 在框架中分析函数

C++ 在框架中分析函数,c++,visual-studio,profiling,C++,Visual Studio,Profiling,我使用了一些框架,发现一些函数(例如,Rebuild(param1,param2))有时工作得非常慢 如何收集每个函数调用的信息(用于检测最长的调用和参数) 修改源代码或在框架外调用函数的建议不合适。我建议您非常困倦()。这是一个非常容易使用的分析工具 它将显示函数中经过的时间。(函数中传递的包含和独占时间,所有时间均以秒为单位,并以应用程序执行的百分比为单位) 您还将拥有函数的callstack 还有一些你自己会发现的东西 您只需运行它并将其附加到您要配置的进程。它不需要(重新)编译任何源

我使用了一些框架,发现一些函数(例如,Rebuild(param1,param2))有时工作得非常慢

如何收集每个函数调用的信息(用于检测最长的调用和参数)


修改源代码或在框架外调用函数的建议不合适。

我建议您非常困倦()。这是一个非常容易使用的分析工具

  • 它将显示函数中经过的时间。(函数中传递的包含和独占时间,所有时间均以秒为单位,并以应用程序执行的百分比为单位)
  • 您还将拥有函数的callstack
  • 还有一些你自己会发现的东西

您只需运行它并将其附加到您要配置的进程。它不需要(重新)编译任何源代码。

我的第一个想法可能是使用代码覆盖率工具(例如)检查在某些测试情况下哪些代码路径受到压力,在这些情况下,您会观察到这种行为

另外注入的分析代码(例如,CPU时间配置文件的调用次数)将有助于进一步找出瓶颈

这两种技术都不会侵入任何源代码,但需要使用某些编译器标志(GCC)重新编译


我很肯定微软Visual Studio也会提供类似的工具。

如果没有独立的外部工具,那就太好了。