Я использую инструменты в проекте ARC (запускаются на устройстве), чтобы убедиться, что я очищаю любую заброшенную память. С этой целью я использую инструмент генерации распределений и снимаю снимки своей кучи за одно и то же действие 10-20 раз. То, что я смущен, - это рост. Некоторое время рост равен 0, а затем другому, кажется, накапливается некоторое количество байтов (никогда не последовательное в диапазоне от нескольких байтов до нескольких килобайт). Но обычно существует как минимум несколько итераций, где рост равен 0.Генерация генераторов кода Xcode
Мой вопрос: если мой рост иногда равен 0, значит ли это, что мое управление памятью правильно? Или у меня все еще есть проблемы, которые мне нужно выведать? Я понимаю, что для «истощения» памяти может потребоваться несколько циклов, но как насчет памяти, которая все еще выделяется и остается даже после> 10 итераций?
Это похоже на более общий вопрос об интерпретации инструментов, поэтому я не использовал какой-либо конкретный код. Кроме того, я обнаружил, что это происходит в различных сценариях моментальной копии кучи: тянуть, чтобы обновить, нажать контроллер просмотра и т. Д.
Редактировать: Я включил snapshot of my Instruments window.
Вы должны искать утечки памяти, чем распределения. Вы можете выделить какой-либо объект, использовать его и выпустить его после его завершения, поэтому подсчитывается распределение, но нет проблемы. – Larme
Я всегда сохраняю утечки памяти как вид рядом с Allocations, и никто не появляется. Но из того, что я понимаю, у вас все еще могут быть утечки, которые не пойманы инструментами. – dragonflyesque