[QLog]使用 CalcPerf 来查询函数性能瓶径

QLog 最新的变动修改了 CalcPerf 函数的返回值类型,改为返回 IPerfCounter(将来可能改名为 IQPerfCounter ) 接口,与以前的相比,这个接口多了一个名为 MarkEscape 的函数,用于记录两次记录之间的时间间隔,以便进行性能计数。

第一步:声明一个用于统计性能的变量,并为其初始化值。当然你用全局的也是可以的,那样你可以统计同一线程中任意代码的执行时长。所以尽量是 thread var。

var
   ACounter:IPerfCounter;
begin
  ACounter:=CalcPerf('测试标签1',true);
end;

第二步:在一段要测试性能的代码后面调用 MarkEscape 来记录前一段操作使用的时间:

ACounter.MarkEscape('测试标签2');

同理在需要的位置继续标记,然后就会输出您的每段代码的用时信息。默认情况下,这个输出到 IDE 的 Events 窗口,如果想输出到日志文件中,那么将 CalcPerf 的第二个参数设置为 false 即可。

分享到: