у меня в приложении Java поток, который запустить While (True) цикл с сна (+50000) (5 минут) внутри. этот поток загружает XML-файл перед циклом, потому что мне нужно проанализировать некоторую информацию из него на первой итерации.Восстановить объект SAXBuilder из памяти
//Loding XML File
org.jdom.Document document = null;
SAXBuilder sxb = new SAXBuilder();
try
{
document = sxb.build(new File("Configuration/Map.xml"));
}
catch(Exception e){}
org.jdom.Element racine = document.getRootElement();
//End loding XML File
От 2 итерации вероятности использования файла XML уменьшить так много, поэтому держать файл XML в памяти не имеет никакого смысла (так как файл имеет 103000 линии/3 MB). поэтому я решил извлечь его из памяти и загрузить его каждый раз, когда мне это нужно. Проблема заключается в том, что я не могу найти, как извлечь документ и racine объект из памяти, так как Java автоматически использует сбор мусора. И скажите, если это хорошая практика, чтобы получить оптимизированное решение.
Спасибо, именно ** Если вы хотите, чтобы ваш объект право на Garbage Collection, назначить свою ссылочную переменную в нуль. ** Но мне интересно, если мое решение является хорошим. –
Это решение будет работать как GC работает в java. GC собирает объекты, которые уже недоступны. Таким образом, вы используете свои документы, sxb, racine и т. Д. И устанавливаете их Null, как только вы закончите с ними. Предоставление им права собираться GC. – amitp