слишком много памяти в UINavigationController - PullRequest
0 голосов
/ 03 мая 2011

У меня есть контроллер навигации с несколькими viewController и tableViewController.

Я использую все объекты автоматического высвобождения, проблема в том, что когда я открываю новый вид и использую его, память из Instrumets увеличивает большее значение памяти, высвобождаемой, когда я возвращаюсь в navigationController. Нет предупреждения об утечке, когда я вернусь к представлению, память снова не увеличится, это как если бы все было в кеше.

Я также пытался использовать собственные объекты с помощью alloc .... и release, но история та же. Это нормально?

1 Ответ

0 голосов
/ 04 мая 2011

UIViewControllers (или, если быть точным, представления / ресурсы / xibs, связанные с ними) интересны, так как iOS будет удерживать ресурсы в памяти и выгружать их по мере необходимости.Вот почему часто метод dealloc кажется, что он никогда не вызывается.Однако не беспокойтесь, если вы сделали правильное управление памятью, ваши контроллеры и ресурсы будут освобождены по мере необходимости - если в ваше приложение будет отправлено предупреждение о нехватке памяти, все представления, которые скрыты или были вытолкнуты, будут выгружены иdealloc'ed.

Попробуйте снова протестировать ваше приложение, как вы это делали раньше, но на этот раз эмулируйте низкое использование памяти (это можно сделать в симуляторе из меню Hardware), затем посмотрите, не падает ли использование памяти из-зачтобы ваши контроллеры были освобождены системой

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