У меня та же проблема, но этот пост показался уместным:
NSDate: timeIntervalSinceNow crash
Я пишу простой набор функций - startClock / endClock - используя NSDate для определения FPS в моем игровом цикле. За исключением того, что timeIntervalSinceNow аварийно завершает работу, утверждая, что мой ранее установленный объект NSDate не существует.
Я точно знаю, что объект NSDate имеет счет сохранения 1, когда я вызываю startClock, но моя теория состоит в том, что экземпляры NSDate внутренне настроены на автоматическое освобождение, когда им становится скучно и они не чувствуют себя полезными.
Использование retain / release для принятия прав на эти непростые и эфемерные объекты NSDate сработало для меня.