Android部分-6:AsyncTask

1.AsyncTask是什么?能解决什么问题

处理异步任务

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)设置可以并行执行。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×