在使用Runnable时,可能会内存泄露。Runnable是一个匿名内部类,因此它对当前Activity有一个隐式引用。如果Activity在销毁之前,任务还未完成, 那么将导致Activity的内存资源无法回收,造成内存泄漏。那么该怎么解决这种问题呢?代码如下,
[java] view plain copy
static class MyRunnable implements Runnable {
@Override
public void run() {
//执行任务
}
}
使用 静态内部类,避免了Activity的内存资源泄漏。
[java] view plain copy
static class MyRunnable implements Runnable {
@Override
public void run() {
//执行任务
}
}
使用 静态内部类,避免了Activity的内存资源泄漏。