处理异步任务
2.给我谈谈AsyncTask的三个泛型参数作用 & 它的一些方法作用。
AsyncTask<params,progress,result> 输入参数类型,进度参数类型,返回参数类型
方法作用:
- onPreExecute:任务执行之前调用
- doInBackground:任务执行在子线程
- onProgressUpdated:进度更新提示
- onPostResult:返回值参数处理
3.给我说说AsyncTask的原理。
线程池和Handler的封装
4.你觉得AsyncTask有不足之处吗?
内存泄漏:静态类、弱引用
生命周期:onDestory中调用AsyncTask中的cancel方法。
结果丢失:Actvity回收之后,AsyncTask持有的Actvity对象为无效引用
并行和串行:3.0 之后默认是顺序执行,通过调用executeOnExecutor(Executor)设置可以并行执行。