Я использую некоторые приложения от предыдущего разработчика. Когда я запускаю приложения через Eclipse, я вижу, что использование памяти и размер кучи сильно увеличиваются. При дальнейших исследованиях я вижу, что они создают объект over-and-over в цикле, а также другие вещи.
Я начал пробираться и делать некоторые очистки. Но чем больше я переживал, тем больше вопросов у меня было "будет ли это на самом деле что-нибудь делать?"
Например, вместо объявления переменной вне цикла, упомянутой выше, и просто установки ее значения в цикле... они создали объект в цикле. Я имею в виду:
for(int i=0; i < arrayOfStuff.size(); i++) {
String something = (String) arrayOfStuff.get(i);
...
}
против
String something = null;
for(int i=0; i < arrayOfStuff.size(); i++) {
something = (String) arrayOfStuff.get(i);
}
Неправильно ли говорить, что нижний цикл лучше? Возможно, я ошибаюсь.
Кроме того, как насчет второго цикла выше, я вернул "что-то" в нуль? Будет ли это очищать память?
В любом случае, какими хорошими методами управления памятью я мог бы следовать, что поможет сохранить мое использование памяти в моих приложениях?
Update:
Я ценю всякую обратную связь. Однако я не спрашивал об этих циклах (хотя по вашим советам я вернулся к первому циклу). Я пытаюсь получить некоторые лучшие практики, за которыми я могу следить. Что-то в строках "когда вы закончите с помощью коллекции, очистите ее". Мне просто нужно убедиться, что в этих приложениях не так много памяти.