0

我有一个类,它必须具有某种时间戳的属性,表示创建此类实例的时刻。然后当有这个类的多个对象时,我需要找到创建这些对象之间的时间间隔。通常的间隔将达到 10 秒,所以我需要至少 1 秒的精度,但像 0.1-0.001 秒这样的精度会好得多。

使用此属性的最佳选择是什么?

据我所知,NSDate 的精度高达 1 秒。我相信我需要一些与 CFTimeInterval 相关的东西。我已经将它用于 CADisplayLink 的视图动画。它为屏幕更新的每个时刻提供了 CFTimeInterval 值,我可以很容易地计算出两个 CFTimeInterval 之间的时间间隔。但是我如何在任何时候为这个 CFTimeInterval 赋值呢?

4

1 回答 1

2

正如 Matthias Bauch 的评论所表明的那样,NSDate 将起作用。您也可以只使用 CFTimeIntervals :

CFTimeInterval currentTime = CFAbsoluteTimeGetCurrent();

请注意,此函数和 NSDate 均基于绝对参考日期(在本例中为 2000 年 1 月 1 日)。这意味着如果在您的应用程序运行时更改系统时钟,则在时钟更改之前获得的值将无法正确地与之后获得的值进行比较。

于 2012-10-26T21:38:10.520 回答