图解AsyncTask

1.在UI线程使用可以更容易,执行后台操作和发布结果到UI线程。
图解AsyncTask
2.AsyncTask是一个帮助类是处理Thread和Handler的帮助类,不是线程框架。
处理用时较少的操作(一般是几秒钟)。如果是比较耗时的操作建议使用java.util.conrurrent包处理。
图解AsyncTask
3.AsyncTask中的三个泛型
分别表示:
Params:发送给要执行任务的参数类型
Progress:后台运算的进度类型
Result:后台运算之后的结果类型。
如果都不使用这些泛型的话,可以传入<Void,Void,Void>
图解AsyncTask
4.AsyncTask运行的四个步骤
图解AsyncTask
5.更新进度相关
在doInBackground方法中调用publishProgress(Progress)方法会调用UI线程中的方法onProgressUpdate(Progress)。
图解AsyncTask
6.取消流程相关
随时调用cancel(true)方法,用isCancel()判断是否被取消。
图解AsyncTask
7.使用Demo
图解AsyncTask
8.使用规则
图解AsyncTask
9.动作顺序:AsyncTask在SDK中不同版本的实现有所区别。
图解AsyncTask
10.注意事项:使用过程中的注意事项。
图解AsyncTask
11.AsyncTask内部的一些状态。
图解AsyncTask
图解AsyncTask
图解AsyncTask