Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
MonStar
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
1

Не освобождаются ресурсы после закрытия Activity

16.07.2013, 19:54. Просмотров 1252. Ответов 7
Метки нет (Все метки)

Очередная непонятная проблема. Делаю в активити setContentView() с большим количеством ImageView. В результате когда запускаю новую, а для этой вызываю finish() не вызывается метод finalize() и все ресурсы хранятся в памяти.
Как избежать этого
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.07.2013, 19:54
Ответы с готовыми решениями:

Освобождаются ли ресурсы в данном случае
в событии нажатия кнопки из главной формы создается child форма так: yesNo wDialog = new...

Освобождаются ли ресурсы при создании скриншота экрана?
Всем привет, в интернете нашел исходник который позволяет делать скриншот экрана, но вот вопрос:...

При выключении режима игры в редакторе не освобождаются ресурсы
Приветствую. При выключении режима игры в редакторе не освобождаются ресурсы. По событии...

Везде ли выполняется метод finish() для закрытия activity
После startActivityForResult в другой activity не срабатывает метод finish();, он должен закрывать...

7
Бородач
Заблокирован
16.07.2013, 19:57 2
никак, и зачем
Exit(0)
0
MonStar
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
16.07.2013, 20:03  [ТС] 3
Логично зачем, что бы освободить память от ненужной информации. Зачем мне несколько мегабайт лишней информации, которая не очищается по непонятной причине. Постоянно вызывается GC и показывает, что освободжает 2 мб памяти, если убрать эти ресурсы, то 500 килобайт.
Когда делаю дамп памяти через HROPF вижу, что в памяти 8 мегабайт занимает Bitmap из этой активити. Хотя её давно закрыл
0
V0v1k
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
16.07.2013, 23:51 4
если для вас это критично, то в онДестрой вытаскивайте битмапки и вызывайте recycle()
0
MonStar
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
16.07.2013, 23:53  [ТС] 5
Цитата Сообщение от V0v1k Посмотреть сообщение
если для вас это критично, то в онДестрой вытаскивайте битмапки и вызывайте recycle()
Странно, что приходится заниматься такими извращениями. А если у меня 100 подобных активити то что, каждая останется висеть и в конце концов получу OutOfMemory. Неужели нельзя очистить всё, когда активити закрывается
0
V0v1k
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
16.07.2013, 23:58 6
вам не обязательно этим заниматься, все само очиститься в свое(никому неизвестное) время.
0
MonStar
22 / 22 / 4
Регистрация: 10.04.2011
Сообщений: 248
17.07.2013, 00:04  [ТС] 7
Я заметил это когда искал проблему в другой части приложения. Уже несколько дней не могу её решить
Оптимизация приложения. Слишком часто вызывается GC собственно вот она
Каждые несколько секунд вызывается GC и пишет что очистил около 2 мегабайт памяти, но если в эту активити не засовывать предварительно лаяут, то каждый раз очищается уже 500 килобайт. Видимо это как-то взаимосвязано, но GC очень мешает жить, ибо так часто создает паузы и всё приложение начинает на это время подвисать.
Критичны даже паузы в 10ms
0
V0v1k
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.07.2013, 00:08 8
у меня никогда не было никаких подвисаний из-за GC
0
17.07.2013, 00:08
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.07.2013, 00:08

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как после автоматического запуска приложения, после его закрытия вернуться к приложению которое было открыто раньше?
Путано описал, вот попроще: 1) Запущено приложение. 2) Автоматически запускается другое...

Порты TClientSocket не освобождаются
Здраствуйте, пишу две мелкие программы для обемна сообщениями, серверная часть (использует...

Как изменить кнопку на втором Activity с первого Activity в Android Studio?
Общая задача сделать уровни для игры, по окончанию первого уровня, появляется кнопка "выбор уровня"...

Как в Android Studio изменять объект одного Activity из другого Activity?
Есть два Activity, в одном кнопка и элемент editText. Во втором activity есть элемент TextView....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.