快速连续调用Asynctask

时间:2015-07-11 14:15:38

标签: android android-asynctask

我有一个基于GCM的应用程序,可以快速连续地将数据发送到手机。我通过广播接收器接收它,并根据收到的参数在ASYNCTASK中执行操作。

我的问题是假设 - 我第一次调用asynctask,它甚至没有达到doinbackground方法,并且第二次调用第一次Asynctask会被调用吗?

1 个答案:

答案 0 :(得分:2)

这取决于Android版本。引用文档:

  

执行顺序

     

首次推出时,AsyncTasks 在a上串行执行   单背景线程。用DONUT开始,这被改为a   线程池允许多个任务并行运行。   从HONEYCOMB开始,任务在单个线程上执行,以避免因并行执行而导致的常见应用程序错误。

如果您真的想要并行执行,可以使用executeOnExecutor(java.util.concurrent.Executor, Object[])调用THREAD_POOL_EXECUTOR

https://developer.android.com/reference/android/os/AsyncTask.html