我的Java应用程序中有一个运行 while(True)循环的线程,内部有 sleep(50000)(5分钟)。这个线程在循环之前加载一个XML文件,因为我需要在第一次迭代中解析它的一些信息。
//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
从第二次迭代开始,使用XML文件的概率减少了很多,因此将XML文件保留在内存中是没有意义的(因为文件 103,000行 / 3 MB < /强>)。所以我决定从内存中检索它并在每次需要时加载它。 问题是我无法找到如何从内存中检索文档和 racine 对象,因为Java会自动使用垃圾收集。 并告诉我,这是一个很好的做法,以获得优化解决方案。
答案 0 :(得分:1)
如果您只希望对象被垃圾收集,那么我认为使变量Null可以做到。
document = null;
sxb = null;
racine = null;