9. AsyncTask类的哪些方法在主线程中执行?哪些方法在子线程中执行?
时间: 2024-03-31 15:32:11 浏览: 77
在Android中,AsyncTask类是一种异步任务处理类,可以在后台线程中执行耗时操作,然后将执行结果返回到主线程更新UI,避免了在主线程中执行耗时操作导致UI卡顿的问题。AsyncTask类中的方法在主线程和子线程中执行情况如下:
在主线程中执行的方法:
- onPreExecute(),在执行异步任务前被调用,一般用于做一些初始化工作;
- onProgressUpdate(Progress...),在异步任务执行过程中被调用,用于更新UI进度;
- onPostExecute(Result),在异步任务执行完成后被调用,用于更新UI结果。
在子线程中执行的方法:
- doInBackground(Params...),在执行异步任务时被调用,用于执行耗时操作。
需要注意的是,AsyncTask类默认的线程池中只有一个后台线程,如果需要执行多个异步任务,需要调用executeOnExecutor方法来使用自定义线程池。同时,在使用AsyncTask类时,需要特别关注内存泄漏问题,避免在Activity或Fragment中持有匿名内部类的引用。
阅读全文
相关推荐


















