Chr*_*ght 10 java garbage-collection
我正在与我的应用程序争夺内存问题,并试图了解垃圾收集.如果我有以下代码:
public void someMethod() {
MyObject myObject = new MyObject();
myObject.doSomething(); //last use of myObject in this scope
doAnotherThing();
andEvenMoreThings();
}
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,myObject垃圾收集可用myObject.doSomething()于此对象的最后一次使用,还是在它完成someMethod()范围之后?即垃圾收集足够聪明,虽然局部变量仍在范围内,但其余代码不会使用它?
小智 4
“超出范围的地方”
public void someMethod() {
MyObject myObject = new MyObject();
myObject.doSomething(); //last use of myObject in this scope
myObject = null; //Now available for gc
doAnotherThing();
andEvenMoreThings();
}
Run Code Online (Sandbox Code Playgroud)