объектов в ViewModel, сохраненный в var list = mutableStateOf<List<Items>>
при установление нового значение в list старые объекты почему-то из памяти не удаляются
то есть код такой:
ViewModel {
var list = mutableStateOf<List<Item>>()
....
list = source.loadItems() //+50 мб жрет приложение
....
list = source.loadItems() //+ еще 50 мб жрет приложение
....
list = source.loadItems() //+ еще 50 мб жрет приложение
....
list = source.loadItems() //+ еще 50 мб жрет приложение
}
то есть приложение при каждой загрузке новых элементов начинает жрать на 50мб больше, не выгружая из памяти старые элементы, хотя ссылки на них больше нигде нет
пробовал применить принудительную очистку оперативки, не помогает
то есть вопрос такой - почему в MutableState не удаляются из памяти старые элементы и как их удалить?
А если gc попросить, то он почистит? Вижу, сразу не заметил
неа по крайней мере пробовал через кнопочку мусора в профайлере - элементы остаются в памяти причем это второй раз замечаю в разных приложениях. поэтому не понимаю, то ли это баг компоуза, то ли фича, то ли я дурной в чем-то
Обсуждают сегодня