Может ли кто-нибудь объяснить цвета и значение следа трещины в инструменте Apple's Instruments? - PullRequest
0 голосов
/ 15 ноября 2009

Я пытаюсь быть хорошим программистом и исправляю утечки в моем приложении для iPhone ... Я не могу понять, что пытается мне сказать «Stack Trace in Leaks». Есть многоцветные стековые вызовы, и я думаю, что каждый цвет что-то значит, но что?

Также ... на скриншоте ниже все вызовы в трассировке стека не относятся ни к одному из моих классов. Означает ли это, что утечка вызвана кодом в iPhone SDK или каким-либо сообщением, возвращавшим мне сохраненный объект, который я должен был выпустить? Может быть, все цвета могут намекнуть на этот вопрос?

Скриншот трассировки стека инструментов

альтернативный текст http://blog.underplot.com/files/leaks.png

Спасибо

1 Ответ

4 голосов
/ 16 ноября 2009

Цвета (цвета) - это типы библиотек, которые использует ваш код (что часто означает то, что вы не вызываете явно - инструменты называют их «ответственными библиотеками»). Если вы отключите опцию «Цвет по библиотеке» в меню настроек в верхней части ячейки Stack Trace, она вернется к белым / голубым ячейкам, чтобы не отвлекать вас.

Среди цветов, которые я видел:

  • Розовый = Базовая основа
  • Коричневый = WebCore
  • Cyan = A.Dylib
  • светло-зеленый = B.Dylib
  • Фиолетовый = Тональный крем
  • Хаки = AppKit

Обычно вы читаете стопку снизу вверх (или инвертируете этот порядок в настройках, и вы можете включить номера кадров и значки файлов для каждого элемента, чтобы помочь вам сохранить его прямо).

...