Инструменты ObjectAlloc: объяснение живых байтов и полных байтов

Я использую инструмент ObjectAlloc Instument в попытке понять то, что память делает мое приложение (iPhone) и когда и где это делает его.

Я действительно хотел бы основное объяснение этих статистических данных:

  • Живые байты
  • Проживание

  • Переходный

  • Полные байты

Когда я пытаюсь удаться, сколько памяти мое приложение использует, я должен посмотреть на Живые Байты или Полные Байты? Это включает пропущенную память? Что такое Переходные объекты?

Спасибо

86
задан Ross 30 September 2011 в 09:17
поделиться

1 ответ

121 --- 3133497-

ObjectSalloc Отслеживает все распределение памяти и деликатность в течение времени, когда ваша программа работает.

Живые байты или NET BYTES - насколько память использует ваше приложение в момент выбора на временной шкале. Это будет включать утечку памяти, поскольку утечка памяти никогда не оформлена.

#Living - это то, сколько распределений определенного типа размера / объекта произошло (и все еще выделено). Это очень полезно при ищете утечки.

Например, если вы повторяете действие (например, входя в исходящий контроллер модального просмотра), и вы видите, что #Living объекта растет на той же сумме каждый раз, то вы Наверное, наверное протекает эти объекты. Затем вы можете подтвердить путем сверления и просмотра точной линейки кода, которая выделяет объекты, и даже см. Индекс времени, который был создан.

Общие байты включают в себя выпущенную память. Полезно отслеживать этот номер для целей оптимизации производительности, но нет, если вы просто пытаетесь увидеть свою текущую площадь памяти или искать утечки.

110
ответ дан 24 November 2019 в 08:05
поделиться