我有一个运行很长时间的函数,我声明并在该函数内分配一个对象.现在从我的想法我知道,只要此函数正在运行,此对象将至少存在于内存中,之后如果没有其他对象引用它,它将可用于垃圾收集.现在,我希望在功能完成运行之前,此对象可用于垃圾收集.在编码管理器中:
public void foo(){
String title;
Object goo=getObject(); //getObject is some other function
//which returns Object and can be null and I want Object to be in memory from here
if(goo!=null)title=goo.getString("title");
//after the last line of code I want Object to be available for garbage
// collection because below is a long running task which doesn't require Object.
for(int i=0;i <1000000;i++) //long running task
{
//some mischief inside with title
}
}
现在从上面的任务我想要在for循环开始之前将Object用于垃圾收集.我可以做一些事情,比如在循环之前用两行代码包围大括号,如果没有我能做什么来完成这个任务?