Я борюсь с очень странной проблемой. Мое приложение выполняет ноты в режиме реального времени с помощью анализа БПФ. Я использую ffttap AudioKit, с циклом таймера 0,01 секунды. Для сеанса задано измерение, а для буфера - 0,02.
Когда я запускаю приложение в первый раз после установки, производительность анализа, по меньшей мере, ниже звездной. Когда я принудительно закрываю приложение и перезапускаю его, внезапно все работает как положено.
Это происходит как с выпусками, так и с отладочными сборками, запущенными из Xcode или независимо. Эта проблема, кажется, несколько смягчается, когда я устанавливаю приложение из TestFlight.
Я не знаю, с чего начать поиск, и мой поиск не дал результатов - как и любая попытка профилировать производительность приложения. Любые советы будут приветствоваться. Сейчас я достаточно отчаянно пытаюсь поставить предупреждение при первом запуске: «Добро пожаловать! Пожалуйста, закройте приложение и запустите его снова, если хотите, чтобы оно работало».
РЕДАКТИРОВАТЬ: Когда я помещаю весь таймер в основной поток с DispatchQueue.main.async, проблема, похоже, исчезает. Однако это обходной путь, и я все еще хотел бы знать, что я пропускаю что-то еще.