Утечки памяти появляются только на iPhone - PullRequest
1 голос
/ 12 декабря 2011

У меня есть приложение панели вкладок с 4 вкладками, и в коде нет ничего впечатляющего.

Все тесты на симуляторах в порядке, с приложением нет сбоев, все отлично работает, в XCode нет предупреждений или ошибок (я использую XCode 4.2, а приложение использует раскадровку).

При выполнении «анализа» в коде нет утечек, ошибок или потенциальных утечек.

При запуске «утечки» утечки не отображаются, и я могу загружать, перезагружать, переключаться между вкладками и т. Д., И все в порядке.

Когда я запускаю это на iPhone, появляются многочисленные утечки!

Некоторые из них, кажется, находятся в коде, который все выпущен и выглядит хорошо, и все хорошо проверяется в Xcode.

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

1 Ответ

0 голосов
/ 12 декабря 2011

Во-первых, ограничивая диапазон контроля (с помощью левой и правой кнопок диапазона) областью, где возникают утечки, вы можете проверить меньшую область.Затем, выбрав несколько полезных проверок в дереве вызовов слева, например «Показать только Obj-C», «Скрыть недостающие символы» и т. Д., Вы получите намного больше полезной информации из инструментов.После этого нажмите на одну из строк, связанных с утечкой, откройте расширенное представление и начните проверку стека вызовов.Кроме того, насколько я помню, двойной щелчок по линии утечки может привести вас к исходному коду, в котором находится утечка объекта.Будьте осторожны, потому что он не показывает, где происходит утечка, он показывает, где находится утечка объекта.Итак, вы должны следить за тем, что происходит с этими объектами.

А что касается разницы между симулятором и устройством, вы можете проверить этот ТАК вопрос.

Надеюсь, что этипомощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...