Pergunta

I want to schedule or queue to execute Multiple AsyncTask in background. I have a AsyncTask for HTTP post request that is running in Service, At the same time i make a one more HTTP request in UI thread of AsyncTask.

UI thread taking too long time to execute, because already one thread is running in service. How to resolve this problem.?

I need to Pause a service thread and I want to execute UI thread first and then restart a service thread again for AsyncTask.

Thanks in advance

Foi útil?

Solução

As AsyncTasks can share a single thread I would try decoupling them by calling:

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

in place of my_task.execute((Void[])null)

as described in this answer: Android SDK AsyncTask doInBackground not running (subclass)

Another way would be to use Executor framework and ThreadPoolExecutor.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top