项目中经常需要统计调用一个外部接口的耗时,在做性能测试时也常需要分析N次调用所需时间,这类统计有一个共性点,即关注调用或执行的相对时间,而不关心绝对时间。 因此,为了性能起见,无需每次都调用gettimeofday,而只需读取系统的时间戳计数器中时间即可。
代码路径如下:http://modulecall.googlecode.com/svn/trunk/tar/modulecall.tar
类代码如下所示:
使用方式也很简单,下面是一个demo
有一点要注意的是,这里timecost得到的时间是毫秒,如果要取微秒也是可以的,只需要修改下tsc.h和tsc.cpp即可。这里即毫秒的原因是对于外部接口调用而言,时间开销一般在毫秒级,所以精度不需要那么准确。
本文介绍了一种简便的方法来统计模块调用的耗时,通过自定义类实现对外部接口调用耗时的精确测量,适用于性能测试及日常开发中需要关注相对时间而非绝对时间的场景。
14万+

被折叠的 条评论
为什么被折叠?



