AsyncTask中execute()延时执行原因

       AsyncTask中execute()延时执行原因一般都是skd版本的问题,我们都知道,AsyncTas是在一个独立的线程中顺序执行的,也就是说,它每次只能执行一个任务,不能同时进行多个任务。

      在1.6版本开始,它加入了线程池的概念,能够同时进行5个任务,超过的只能等待着5个执行完再执行,所以说AsyncTask中execute()延时执行原因主要就在这里,你延时执行的异步操作可能就是这5个可同时执行的任务之外的操作。所以说,在使用AsyncTask,并且版本在android 3.0以下的版本时,一定要注意着一点,保证异步操作数不要超过5个,或者不要使用AsyncTask。

但是在android 3.0以后的版本中,这个问题得到了解决,它是每次只启动一个异步任务,完成任务之后在去执行下一个任务,也就是说,在一个时刻下,只有一个任务在后台线程中被执行。


综上所述,在使用AsyncTask时,一定要注意自己所使用的是哪个版本。

你可能感兴趣的:(AsyncTask中execute()延时执行原因)