【发布时间】:2015-05-12 19:02:54
【问题描述】:
我需要测量经过的时间,以便知道何时超过了某个时间段。
我曾经为此使用Ticks() 和Microseconds(),但这两个函数现在都已弃用。
CFAbsoluteTimeGetCurrent 不是正确的使用方式,因为它可能会向后运行,如文档中所述:
重复调用此函数并不能保证单调 越来越多的结果。系统时间可能会减少,因为 与外部时间参考同步或由于显式 用户更改时钟。
还有什么不被弃用且相当面向未来的?
【问题讨论】:
-
mach_absolute_time?精彩讨论:stackoverflow.com/questions/23378063/…(题外话:嗨,Thomas!) -
(嗨,MattN!)是的,感谢有关 mach_absolute_time 的指针 - 我同时找到了 Q&A 1398,但不知道溢出。不过,我希望还有其他方法,也许使用计时器(尽管我不知道如果时钟变回它们是否正确运行)。
-
在 DriverServices.h 中声明了其他已弃用的计时函数
UpTime。该标题中的注释说“改用 CFAbsoluteTime 或马赫时间例程”。
标签: macos cocoa core-foundation mach