У меня есть таймер, который запускает метод через каждые 60 мс интервала, когда приложение находится на переднем плане, и срабатывает с тем же интервалом, даже если оно находится в фоновом режиме.
Когда я инициирую/принимаю мобильный вызов, таймер запускает метод через каждые 120 мс интервала. Я подумал, что это проблема с таймером, поэтому я попробовал следующие подходы.
Подходы, которые я пробовал:
- NSTimer в фоновом потоке.
- NSTimer в основном потоке.
- dispatch_source_timer
- цикл while с 60 мс сна. (Здесь нет таймера)
Таким образом, даже если вы используете простой цикл while, все равно есть задержка при запуске метода. Поэтому, чтобы сохранить интервал, я изменил интервал таймера на 30 мс (для всех подходов), когда я получаю/инициирую вызов, но результат тот же (120 мс).
Буду рад, если кто подскажет подход.