快速 Android 问题...当您创建一个替换现有 AsyncTask 的新 AsyncTask 时会发生什么?例如,您有一个简单的 Activity :
public class ExampleActivity extends Activity{
private MyTask myTask;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// first instance
myTask = new MyTask();
myTask.execute();
// immediately replace first instance
// assume the first instance hasn't finished yet
myTask = new MyTask();
myTask.execute();
}
}
第一个实例会发生什么?它运行完成了吗?是垃圾回收吗?
最佳答案
两个实例将分别运行直至任务完成。
首次引入时,AsyncTasks 在单个后台线程上连续执行。
从 DONUT 开始,这被更改为允许多个任务并行运行的线程池。
从 HONEYCOMB 开始,任务在单个线程上执行,以避免并行执行导致的常见应用程序错误。
关于java - 用新的 Asynctask 替换 AsyncTask 时会发生什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27518681/