我目前正在AsyncTask的onPostExecute方法中执行类似以下的操作,其中NewTask
不是正在执行的当前任务:
private class OlderTask extends AsyncTask<String, Void, Integer> {
//other functions (not important)
@Override
protected void onPostExecute(Integer result) {
new NewTask().execute(null, null);
}
}
我在想这是否是个坏主意。这样做会导致旧任务的垃圾回收等待新任务吗?使用这种方法还可能存在其他问题吗?
如果这是个问题,我该如何解决?
OlderTask
的不同实例,并且不直接或间接地引用先前的实例,就可以这样做。 - Alex Gitelman