有没有办法在不使用NSDate的情况下获取timeIntervalSince1970?

时间:2011-08-31 23:42:03

标签: objective-c cocoa nsdate

我正在努力避免创建一个NSDate对象,因为我的代码需要“当前时间”。我最终调用[[NSDate date] timeIntervalSince1970]了很多。有没有办法在没有实例化对象的情况下获取时间间隔?

3 个答案:

答案 0 :(得分:4)

CFAbsoluteTimeGetCurrent为您提供了类似的准确性 - 无需任何对象。

CFAbsoluteTimeGetCurrent使用不同的基数(或参考日期),因此如果您需要使用其他参考日期(例如,相对于1970年的某个时间),您必须首先确定偏移量或基数。

答案 1 :(得分:3)

NSTimeInterval interval = [NSDate timeIntervalSinceReferenceDate];

答案 2 :(得分:1)

您删除了有关选项的评论,其准确性高于CFAbsoluteTimeGetCurrent:尝试gettimeofday