Я столкнулся с проблемой, когда мой таймер случайно не работает.Я могу буквально ОСТАНОВИТЬ приложение и перестроить его без изменения кода.Это работает иногда, а иногда нет?Когда я говорю «иногда», я говорю о сеансе приложения.Если он запустится, он останется запущенным.Но это не работает каждый сеанс приложения.Я вижу то же самое, когда использую оба кодовых блока ниже.
//Code1:
//I tried this block of code after reading it might be related to how I am interacting with my UIElements while the timer is running in the background.
NSRunLoop *runloop = [NSRunLoop currentRunLoop];
syncWithServerTimer = [NSTimer timerWithTimeInterval:15 target:self selector:@selector(syncWithServer) userInfo:nil repeats:YES];
[runloop addTimer:syncWithServerTimer forMode:NSRunLoopCommonModes];
[runloop addTimer:syncWithServerTimer forMode:UITrackingRunLoopMode];
//Code2:
syncWithServerTimer = [[NSTimer scheduledTimerWithTimeInterval:15 target:self selector:@selector(syncWithServer) userInfo:nil repeats:YES] retain];
Опять же, я попробовал оба из них, и они оба работают БОЛЬШЕ времени, но не ВСЕ время.В чем может быть проблема?Я не досрочно освобождаю или аннулирую.