Android应用程序

时间:2017-03-10 05:48:24

标签: android android-asynctask

在Application-class的Android应用程序中将启动一些单例,每个单例都有一些AsyncTask。在这种情况下,它将同时运行最多5或128个AsyncTask? SDK> 16

2 个答案:

答案 0 :(得分:0)

How many async task can be used in a class android?检查这个帖子,我觉得它会很有用。 总结 - 您可以根据需要运行,但是在某些点之后(当使用所有线程时)它们将执行并行或串行。这取决于设备。

答案 1 :(得分:0)

  

首次引入时,AsyncTasks在单个后台线程上串行执行。从DONUT开始,这被改为一个线程池,允许多个任务并行运行。从HONEYCOMB开始,任务在单个线程上执行,以避免由并行执行引起的常见应用程序错误。

基于上面的描述,我假设从API 11开始,所有任务将在一个线程上以串行方式执行,这意味着一次一个,除非我们在执行的每个任务上调用AsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);但是,仍然可以一次运行任务的数量仍取决于当时的资源,例如核心数量可自由处理。