Ho 2 AsyncTasks in esecuzione in un frammento.
Gli AsyncTask sono definiti in una classe diversa e non in classi private interne del frammento.
Il problema che ho è che ora è venuto fuori che ho bisogno che AsyncTaskX attenda fino a quando AsyncTaskY ha finito il suo onPostExecute
Come posso risolvere questo?
Stavo pensando di usare un countdownlatch ma AsyncTaskY è in una classe diversa e non sono sicuro di quale sia il modo migliore per codificarlo?
C'è un modo per verificare se un AsyncTask è finito completamente?Come posso coordinare due attività in background?
Aggiornamento:
mi chiedevo è task.execute().get()
ritorno dopo il onPostExecute
?
Aggiornamento 2:
chiama CountDownLatch.countDown()
dal thread dell'interfaccia utente al sicuro?
È possibile passare la stessa istanza 'CountDownLatch' ai costruttori di entrambe le attività? –
È possibile utilizzare le trasmissioni per notificare un destinatario nel frammento quando ciascuna di esse è completa. – dharms
Riceverete una risposta dal primo AsyncTask. Sul callback del tuo First Async puoi semplicemente chiamare il secondo AsyncTask. – Ahmed