在android中安排多个异步任务

时间:2014-04-01 13:32:18

标签: java android multithreading android-asynctask priority-queue

我想安排或排队在后台执行Multiple AsyncTask。我有一个在Service中运行的HTTP post请求的AsyncTask,同时我在AsyncTask的UI线程中再发一个HTTP请求。

UI线程执行时间太长,因为已经有一个线程正在服务中运行。 如何解决这个问题。

我需要暂停服务线程,我想首先执行UI线程,然后再次为AsyncTask重新启动服务线程。

提前致谢

1 个答案:

答案 0 :(得分:1)

由于AsyncTasks可以共享一个线程,我会尝试通过调用来解耦它们:

my_task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void[])null);

取代my_task.execute((Void[])null)

如本回答所述:Android SDK AsyncTask doInBackground not running (subclass)

另一种方法是使用Executor框架和ThreadPoolExecutor