Подскажите пожалуйста, правильно ли я очищаю глобальные массивы из памяти, и надо ли это вообще делать?
//уничтожение(обнуление) массивов, особенно самого большого
public void kill_array_of_gallery() {
if( galleries != null) {
galleries.clear();
galleries = null;
}
if( n_map_img_arrList != null) {
n_map_img_arrList.clear();
n_map_img_arrList = null;
}
if( mapsActivity.fr_Gallery_2.load_imgName_arrList != null) {
mapsActivity.fr_Gallery_2.load_imgName_arrList.clear();
mapsActivity.fr_Gallery_2.load_imgName_arrList = null;
}
}
Тут два варианта, либо очистить список, либо присвоить ссылке на список значение null
.
В первом случае, если "достижимые" объекты не содержат ссылки на объекты содержащиеся в массиве, garbage collector (GC) удалит эти объекты;
Во втором случае, если "достижимые" объекты не содержат ссылки на этот список, GC удалит этот список, но не удалит объекты которые могли храниться в этом списке, если на них есть ссылки из "достижимых" объектов;
Как GC определяет "достижимость" объектов? С его точки зрения, объект считается достижимым, если до него можно добраться из GC roots. GC roots - это особые места, такие как классы стандартной библиотеки, локальные переменные, статические переменные, JNI ссылки и пр. Более подробно про это можете почитать здесь
Касательно вашего вопроса, достаточно просто вызвать clear()
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
У меня есть ArrayList box (коробка с фигурами)Мне нужно реализовать метод, который вытаскивает из коробки все круглые фигуры
Нашел библиотеку на GitHub https://githubcom/processing/processing-sound но не понимаю как подключить без jar файла, Maven не использую
Писал тест для своего проекта на Spring Boot и появилась проблема: класс, который я тестирую, использует в одном из своих методов компонент CrudRepository...
Привет я хочу поставить фоновое изображение своему сайтуНо браузер не читает его