Отличный способ проверить объекты, которые агрегируются в памяти, - это использовать новую функциональность инструментов (в Xcode 3.2.3) Heap Shot.
Используйте обычный инструмент Allocations для вашего работающего приложения.Выполните серию повторяющихся событий, которые должны вернуться в некое известное состояние (например, перейти на один уровень вниз в контроллере навигации и вернуться).Каждый раз, когда вы делаете это, нажимаете кнопку Mark Heap
в левой боковой панели для инструмента Allocations (под заголовком раздела Heapshot Analysis
).
Что это будет делать, это пометить кучу в каждом из начальныхуказывает на это повторяющееся действие и сравните объекты, созданные этой точкой, с объектами, которые были созданы к тому времени, когда вы пометили кучу последней.Будут перечислены только те объекты, которые были созданы между этими двумя точками и все еще живы в памяти.
Если вы накапливаете объекты, но они не являются утечками или пропускаются инструментом утечки, они должны показатьздесь.Таким образом, я обнаружил несколько незаметных накоплений памяти, особенно когда вы связываете это с инструментом автоматизации пользовательского интерфейса для автоматизации повторяющихся действий, которые вы тестируете.