为什么sTimebaseInfo.denom为0?

时间:2012-05-19 19:40:45

标签: c++ ios timing

我正在使用这段样板来测试iOS 5.1.1(4s)上某些视频设置的性能:

static mach_timebase_info_data_t sTimebaseInfo = { 0, 0 };
if ( sTimebaseInfo.denom == 0 ) {
    kern_return_t err = mach_timebase_info(&sTimebaseInfo);
    if (err) {
        NSLog(@"unable to get mach timebase info: %d",err);
    }
}
uint64_t        start = mach_absolute_time();
uint64_t        end;
uint64_t        elapsed;
uint64_t        elapsedNano;

    // stuff

end = mach_absolute_time();
// Calculate the duration.
elapsed = end - start;
elapsedNano = elapsed * sTimebaseInfo.numer;
elapsedNano /= sTimebaseInfo.denom;

但即使在运行mach_timebase_info之后,sTimebaseInfo.denom始终为0。它没有错误。我不知道该怎么做。 :)以纳秒为单位获取值不是命令式;显然,我可以没有比较结果。但肯定会很好。

帮助? :)

0 个答案:

没有答案