True Parallel AsyncTask in Android
Multiple AsyncTask execute() actually execute the tasks sequentially. If the previous task takes a long time to run, the next task can only wait till the previous one finish. To have a true parallel run, use the following instead of AsyncTask.execute() : AsyncTask.executeOnExecutor(Executor exec, Params... params)