2009-06-30 5 views
13

Я очистил приложение от утечек с помощью средства утечки, но я все же замечаю, что инструмент objectalloc вскакивает в число объектов, выделенных и занимаемых посадками, при переключении представлений.Проверка распределения памяти в Инструментах

Я особенно видя большое число из:

GeneralBlock-16 с главным Фонд отвечает с абонентом NSLogv

и

GeneralBlock-0 с главным QuartzCore ответственными

Любые советы о том, что я могу сделать, чтобы отладить это?

Спасибо!

ответ

23

Средство ObjectAlloc предназначено для вычисления общего распределения объектов с течением времени, и оно не учитывает деллакацию. По существу: он всегда будет подниматься.

Что вы можете сделать, это посмотреть на столбцы Net Bytes и # Net. Эти столбцы будут скорректировать в зависимости от количества объектов, которые вы освободите, и если вас беспокоит общее распределение объектов, вы можете использовать их для оценки производительности вашей программы.

Вы можете посмотреть this thread на форумах поддержки Apple - это больше касается того, что измеряет инструменты и как вы можете протестировать свое приложение.

+0

Извините, возможно, мой вопрос был неясным. Я знаю, что распределение объектов всегда растет, однако я имел в виду Net Bytes и #Net, которые также никогда не спускаются, что вызывает беспокойство. Нажатие представлений в контроллерах навигации значительно увеличивает эти числа, в то время как всплывающие представления не уменьшают их. Кроме того, большое количество генераторов-блокировок вызывает тревогу. Я действительно хочу знать, почему так много 0-битных объектов существуют. –

+5

Это не совсем правильно; вы можете настроить инструмент Allocations, чтобы отслеживать прямые выделения. В этом случае столбцы будут точно отражать то, что находится в памяти прямо сейчас. – bbum

+0

bbum is right, в Xcode 4 по умолчанию шаблон Allocations в Instrument отображает «All Allocations», разбитые на столбцы, отображающие как байты, так и общие байты. – MattyG

 Смежные вопросы

  • Нет связанных вопросов^_^