Runnable与Callable的区别
![2asynctask的实现要点-第1张-游戏相关-八六二网](/pic/YmM2OTVCMUpGU1E4RlIxUVJENEtqNFlmS3BvRytnWTZTdU5YbTJn.jpg)
Runnable:仅可执行任务,不返回结果。Callable:既可执行任务,也可返回结果。
AsyncTask的执行步骤
execute():启动异步任务。doInBackground():执行耗时任务,必须重写。onPreExecute():任务执行前调用。onProgressUpdate():任务执行中更新进度。onPostExecute():任务执行完毕调用。
AsyncTask的线程处理
AsyncTask内部使用线程池管理线程,每个AsyncTask实例使用一个线程执行任务。该线程在任务执行完毕后被释放。
AsyncTask的并发控制
AsyncTask只能执行一个任务,如果有多个任务需要执行,需串行执行或者使用多个AsyncTask实例。
AsyncTask的范例
定义AsyncTask:
class MyAsyncTask extends AsyncTask<Integer, Integer, Boolean> {}执行任务:
new MyAsyncTask().execute(args);获取结果:
Boolean result = myAsyncTask.get();
- 随机文章
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。