如果我想运行一个while循环到无穷大,我正在获得Java堆空间,但我正在使用“系统垃圾清理器”来清理内存。那我怎么能解决这个问题呢。
try{
while(true){
try{
attach=sample.readMails();
System.gc();
}
catch (IOException e){
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("Error In readMails-->downloads");
}
}
}catch (Exception e){
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("Error In Infinite While");
}
答案 0 :(得分:0)
System.gc
仅适用于未使用的对象。
根据{{3}}
调用gc方法表明Java虚拟机耗费 努力回收未使用的物体以制造记忆 它们目前可以快速重复使用。