【发布时间】:2017-04-19 10:10:53
【问题描述】:
下面的代码会导致内存泄漏吗? 假设方法在Activity中
public void main(){
final Object obj = new Object();
Runnable run = new Runnable() {
@Override
public void run() {
Thread.sleep(25000);//sleep
obj.hashCode();//do something
}
};
new Thread(run).start();
}
这会导致泄漏吗?由于线程引用了在其外部创建的对象
谢谢 拉姆
【问题讨论】:
-
这甚至不会编译......你不能再次分配给 final (更不用说 Runnable 实现中缺少方法和missig分号)
-
为什么要这样做?为什么不把它放在 onDestroy()
-
抱歉语法不正确。如果后台线程在活动销毁后仍在等待,现在它的行为如何。 (我知道如果对象是类的成员,那么活动肯定会泄漏)
标签: android memory-leaks