AudioKit - производительность приложения улучшается со второго запуска - PullRequest
1 голос
/ 10 октября 2019

Я борюсь с очень странной проблемой. Мое приложение выполняет ноты в режиме реального времени с помощью анализа БПФ. Я использую ffttap AudioKit, с циклом таймера 0,01 секунды. Для сеанса задано измерение, а для буфера - 0,02.

Когда я запускаю приложение в первый раз после установки, производительность анализа, по меньшей мере, ниже звездной. Когда я принудительно закрываю приложение и перезапускаю его, внезапно все работает как положено.

Это происходит как с выпусками, так и с отладочными сборками, запущенными из Xcode или независимо. Эта проблема, кажется, несколько смягчается, когда я устанавливаю приложение из TestFlight.

Я не знаю, с чего начать поиск, и мой поиск не дал результатов - как и любая попытка профилировать производительность приложения. Любые советы будут приветствоваться. Сейчас я достаточно отчаянно пытаюсь поставить предупреждение при первом запуске: «Добро пожаловать! Пожалуйста, закройте приложение и запустите его снова, если хотите, чтобы оно работало».

РЕДАКТИРОВАТЬ: Когда я помещаю весь таймер в основной поток с DispatchQueue.main.async, проблема, похоже, исчезает. Однако это обходной путь, и я все еще хотел бы знать, что я пропускаю что-то еще.

...