утечка памяти в системных библиотеках - PullRequest
3 голосов
/ 01 февраля 2011

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

enter image description here

я уже потратил впустую 2 дня, поэтому только спрашиваю здесь.помочь в этом.

Были ли утечки?

Ответы [ 5 ]

4 голосов
/ 01 февраля 2011

Проблема в моих системных библиотеках или что-то еще?

(Выделение вопроса ОП, поскольку тот, кто думает, что это нужно закрыть, не видел его. Совершенно правильный вопрос.)

Утечки, кажется, полностью в системе; такая утечка может быть косвенно вызвана вашим кодом, но это крайне маловероятно.

Это также может быть ложным срабатыванием; система играет в игры с указателем, так что ссылка все еще существует.

В любом случае, сообщите об ошибке через http://bugreport.apple.com/.

Если вы не видите роста с течением времени - если утечка ограничена выделением 6 ~ 32 байта для времени выполнения вашего приложения - тогда вам не о чем беспокоиться, кроме раздражения от присутствия там.

2 голосов
/ 02 февраля 2011

Насколько я могу судить по изображению, кажется, что постоянно работает какой-то фоновый поток ... будь то системная библиотека или какой-то объект, который не был выпущен должным образом.Такие проблемы действительно являются узким местом в разработке.Становится действительно сложно определить точную точку, где происходит утечка.

Сборка и анализ - хороший вариант, поскольку он даст вам правильный путь относительно того, где и почему происходит утечка !!

Удачи !!

1 голос
/ 01 февраля 2011

Исходя из стека вызовов на скриншоте, похоже, что все вызовы находятся внутри системных библиотек и выполняются в фоновом потоке. libGLProgrammability.dylib - это, вероятно, OpenGL, который, по-видимому, запускает LLVM изнутри.

Увеличивается ли утечка со временем? Если нет, так как есть только 6 объектов (всего 192 байта), показывающих утечку, вы, вероятно, не хотите сводить себя с ума по этому поводу ...

0 голосов
/ 01 февраля 2011

Вы пробовали это на устройстве?Иногда в симуляторе видны утечки, которые не отображаются на устройстве.

0 голосов
/ 01 февраля 2011

Вам нужно правильно распределить и освободить все объекты, что не просто, но необходимо.

Вы можете включить другой элемент управления из опций сборки: RUN_CLANG_STATIC_ANALYZER, чтобы показать все неправильные версии во время компиляции

См. Этот ответ: Управление памятью в контроллере iPad View

надеюсь, это поможет.
A

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