Я использую инструмент Allocations, пытаясь очистить свое испорченное использование памяти.Почему CALayer выделяет всю эту память и как ее отслеживать?
В соответствии с рекомендациями Apple я делаю снимки при повторном выполнении действия, чтобы освободить память. По большей части она работает хорошо, но я в тупик этот:
Это распределение 464KB где-то в CALayer дисплей, который никогда не будет вычищен. Хуже всего то, что это непоследовательно - это не происходит сразу (в этом случае это произошло на 10-й итерации моего повторного действия, и число менялось). Обычный рост кучи за действие составляет менее 20 КБ (все еще чистка), но это действительно выделяется. Я не могу найти ни одного шаблона, когда это произойдет, или почему.
Как я могу отслеживать его?
Что-то вроде этого - мое лучшее предположение ... но я не понимаю, что его отслеживать: отображение не отображается во время других итераций, и я не вижу никаких видов или контроллеров представления остался в распределении. –
В вашем приложении может отображаться несколько разных итераций. – hotpaw2