Я использовал шаблон проекта Xcode для создания экранной заставки macOS с аналогичными целями iOS и macOS. Все они выполняют одну и ту же серию рисования и анимации, в основном с использованием Core Animation и CALayers
.
Приложения macOS и iOS, которые работают независимо друг от друга, работают отлично. Но при запуске в качестве экранной заставки (с использованием ScreenSaverView
структуры ScreenSaver
) в течение длительного периода времени (несколько часов) все анимации блокируются, и система становится настолько засоренной, что я даже не могу от нее отказаться заставка. Это похоже на утечку памяти или графики, но это не очевидно при работе в других средах. Я также попытался профилировать все цели в инструментах, но безрезультатно.
Кто-нибудь может подумать о том, почему эта проблема возникает только с заставкой?