同时执行Android 4.0异步任务是不可能的

同时执行Android 4.0异步任务是不可能的,android,multithreading,android-asynctask,android-4.0-ice-cream-sandwich,Android,Multithreading,Android Asynctask,Android 4.0 Ice Cream Sandwich,我也有同样的问题 除了我使用android 4.0和android:minSdkVersion=“14” 我试过他的例子,也得到了: bar bar bar bar bar bar bar bar bar 编辑: 我找到了解决办法 而不是使用: task.execute(); 使用: task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, null); 听起来这就解释了(从以下方面): 首次引入时,异步任务是在单个后台线程上串行执行的。

我也有同样的问题 除了我使用android 4.0和android:minSdkVersion=“14”

我试过他的例子,也得到了:

bar bar bar
bar bar bar
bar bar bar
编辑:

我找到了解决办法

而不是使用:

task.execute();
使用:

task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, null);

听起来这就解释了(从以下方面):

首次引入时,异步任务是在单个后台线程上串行执行的。从DONUT开始,它被更改为一个线程池,允许多个任务并行运行。从蜂巢开始,任务在单个线程上执行,以避免并行执行导致的常见应用程序错误

如果确实需要并行执行,可以使用线程池执行器调用executeOnExecutor(java.util.concurrent.Executor,Object[])


请考虑加入你的灵魂作为一个答案并接受它,所以这个问题不再显示为没有答案。如果您这样做,我将投票支持您的答案。通过一个代码示例,您将调用
myAsyncExtendingClass().execute()
,而不是调用
myAsyncExtendingClass().executeOnExecutor(AsyncTask.THREAD\u POOL\u EXECUTOR,”