AsyncTask的简单总结

1、必须在主线程中创建
2、execute方法必须在UI线程调用
3、不要在程序中直接调用onPreExecute()、等
4、一个AsynsTask只能执行一次,即只能调用一次execute方法,否则出现运行时异常
5、AsyncTask < Integer, Integer, Void > :三个泛型的参数分别代表(不使用时可用Void代替):"执行任务输入的参数","后台执行任务的执行进度","后台执行最终结果参数"

过程
1、execute(Params… params):(开发触发异步任务)executeOnEexcutor(sDefaultExecutor,params)(串行线程池)
2、onPreExecute():用于执行后台任务前
3、doInBackground(Params… params):用于执行较为耗时的逻辑,通过用到的输入参数来处理返回结果就是onPostExecute(Result result)方法中所对应的结果,在执行过程中可以调用publishProgress(Progress… values)来处理进度相关信息。(注意:此方法非主线程,不可用来做UI操作)
4、onProgressUpdate(Progress… values),在调用publishProgress(Progress… values)时,此方法被执行。
5、onPostExecute(Result result),当后台操作结束时,doInBackground(Params… params)返回结果做为参数传递到此方法中。
6、onCancelled取消执行任务时调用,不会再调用onPostExecute方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值