很久前在写源码探索系类2–AsyncTask时候有提及到这个类,现在在这里把FutureTask
,Future
和Callback
,这三个火枪手的关系温习下
起航
就让我们进入主题,开始说说这个FutureTask吧。
在安装开发过程中,系统限制我们对于耗时的任务是不能执行在主线程的,必须单独开一个线程去做。
所以我们在开发过程的一种写法是下面这样
1. 用Runnable
new Thread(new Runnable() {
@Override
public void run() {
//do something
...
myHandler.sendMessage(msg);
}
}).run();
但有时候我们需要这个线程的运算结果,可我们没办法直接获取,因此安卓配套了一个Handler给我们用,利用他发送消息会我们的主线程,执行一些更新任务等。