八六二网

八六二网

2asynctask的实现要点

admin

Runnable与Callable的区别

2asynctask的实现要点-第1张-游戏相关-八六二网

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();

标签 2asynctask的实现要点