Сборщик мусора ест статусный элемент - PullRequest
0 голосов
/ 26 августа 2010

Я включил сборку мусора (target-c 2.0), и изображение для элемента состояния исчезло при перезапуске приложения. Я вручную запоминаю изображение и статус элемента.

Это приложение работает нормально, когда сборка мусора отключена (то есть элемент состояния не исчезает). Есть ли способ заставить сборщик мусора не собирать определенные переменные, или я должен полностью его отключить? При включении сборки мусора память моего приложения падает с 100 МБ до 2 МБ.

Ответы [ 2 ]

1 голос
/ 26 августа 2010

Просто сохраните ссылку на него как на переменную экземпляра какого-либо объекта, например, контроллера представления, в котором он появляется.

1 голос
/ 26 августа 2010

Как вы "вручную управляете памятью изображения и статусного элемента"? Если вы используете release и retain, они фактически игнорируются в GC.

В GC объекты остаются рядом, если (а) у вас есть сильная ссылка на них в отсканированной памяти GC или вы (b) CFRetain их.

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