Android 中的 AsyncTask 可以比较容易实现异常操作,
由于其doInBackground是在后台线程中执行,而 onPostExecute 是在UI线程中执行,所以广泛用于异步运算后更新界面。
多线程并发
从 HONEYCOMB (3.0)开始,Android中的AsyncTask只会在一个后台线程中运行,如果想要并发操作,需要调用 executeOnExecutor(java.util.concurrent.Executor, Object[]) 方法,在该方法中指定Executor来进行并发。
为了让代码能在新老版本中同时运行,可以判断AsyncTask有无executeOnExecutor方法,然后进行不同的处理。下面是一个示例。
参考
- http://developer.android.com/reference/android/os/AsyncTask.html
声明: 本文采用 CC BY-NC-SA 3.0 协议进行授权,转载请注明出处。