介绍下日常开发使用的分析工具,如有新的,请在评论中指出。
一. gprof,打印出程序运行中各个函数消耗的时间,可以帮助程序员找出众多函数中耗时最多的函数。使用过程简单,只需三个步骤。
使用-pg编译、链接选项开启分析功能。
执行程序,会在当前目录生成gmon.out文件。
使用gprof处理gmon.out得到分析文件。
例子:
gprof得到的analysis.txt分析文件,从中可以看到程序耗时、函数耗时、函数调用关系、函数调用次数等信息。对于程序的优化帮助很大。

注意事项:
1. 系统调用函数无法监控。
2. 非-pg编译的共享库也无法监控。
二. 使用time命令,Linux提供time命令,可以得到程序执行的时间,包括总时间、用户态时间以及系统调用时间。不过,得到的信息略显粗糙,只提供一个大概的情况,对于具体的函数调用得不到分析。
参考连接。
1. GNU gprof
2. C/C++性能测试工具 GNU gprof
3. GProf去优化C+居然可以做到如此完美真是天一对难兄难弟
=============================================================================================
Linux应用程序、内核、驱动、后台开发交流讨论群(745510310),感兴趣的同学可以加群讨论、交流、资料查找等,前进的道路上,你不是一个人奥^_^。