Как сравнить два раза с точностью до миллисекунд? - PullRequest
0 голосов
/ 23 апреля 2010

У меня есть текстовый файл субтитров, который работает со стандартным форматом srt 00: 00: 00,000 Час, минуты, секунды, миллисекунды.

Я хочу создать таймер для обновления экрана субтитров и проверить текущее время, чтобы узнать, какие субтитры отображаются на экране.

Что лучше всего использовать?NSTimeInterval, NSDate?Я думаю, что лучше всего преобразовать все во времена в миллисекунды и сравнить.Но NSTimeInterval работает с секундами, а не миллисекундами.

Подсказка?

Маркос

1 Ответ

4 голосов
/ 23 апреля 2010

NSTimeInterval скорее всего то, что вы хотите. NSTimeInterval выражается в единицах секунд, но имеет дробную часть, которая может представлять значения менее миллисекунды (это typedef'ed to double). Таким образом, значение 2,5 представляет 2 секунды + 500 мс.

Фактически, NSTimer использует NSTimeInterval

+ (NSTimer*)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds
                                invocation:(NSInvocation*)invocation
                                   repeats:(BOOL)repeats;
...