我只在标记
timing==1
我想要不同的时间进入不同的变量。
这就是我目前正在做的:
if (timing) {time1=getTime}
foo(A);
bar(A);
if (timing) {elapsed1+=getTime-time1;}
if (timing) {time2=getTime}
bar(A);
if (timing) {elapsed2+=getTime-time2;
if (timing) {time2=getTime}
bar(C);
if (timing) {elapsed2+=getTime-time2;
if (timing) {time1=getTime}
foo(A);
fun(B);
if (timing) {elapsed1+=getTime-time1;}
time1+=TIMEIT{
foo(A);
bar(A);
}
time2+=TIMEIT{
bar(A);
}
time2+=TIMEIT{
bar(B);
}
time1+=TIMEIT{
foo(A);
fun(B);
}
它何时回来
0
如果
timing==0
或者是街区在
{}
.
另外,有没有一种方法可以自动计算出一个代码块(或整个代码)调用bar()和foo()的时间,而不是fun()和swiz()的时间,而不分析整个代码?如果是这样的话,这会恶化性能吗?
更具体地说,是这样的:
time+=TIMECALLSTOBARANDFOO{
foo(A);
bar(B);
swiz(foo(A));
...
fun(A);
bar(C);
...
}
哪里
timebar
将只包含调用
bar
和
foo