Zwei verschiedene AsyncTasks werden gleichzeitig ausgeführt

Ich habe insgesamt zwei verschiedene Implementierungen vonAsyncTask, sagen wirAT1 undAT2.

AT1 wird dann zuerst ausgeführtAT2 ausgeführt wird.AT1 wartet indoInBackground bis umAT2 hat seine Aufgabe erfüllt, indem er diese Daten alle 500 ms abfragt. Das passiert aber nie.

Also, was ich im Grunde will, ist Folgendes:

Aber was zu passieren scheint, ist Folgendes:
AußerAT1 wird nie gemacht, undAT2 wird nie gestartet.

Gibt es eine Möglichkeit, diese beiden zu zwingen?AsyncTasks auf zwei getrennten Threads ausgeführt werden, oder gibt es eine andere Lösung dafür?

Der erste Start ist nicht möglichAT2 und danach ausführenAT1.

BEARBEITEN
Zur Klarstellung:AT1 wird ausgeführt, wenn ein Benutzer einen bestimmten Bildschirm öffnet und Daten für diesen Bildschirm basierend auf einem Standort herunterladen muss.AT2 wird beim Standortwechsel ausgeführt. In diesem Fall werden einige Berechnungen durchgeführt, die im UI-Thread nicht durchgeführt werden können.

WannAT2 ist nie durchgeführt worden,AT1 Da es keinen Speicherort zum Herunterladen von Daten gibt, muss darauf gewartet werdenAT2 beenden. WannAT2 hat ausgeführt wurde, sind die Standortdaten bereits vorhanden, undAT1 muss nicht warten

Dieses Problem tritt auch bei ICS auf, nicht bei Android 2.3diese Antwort schlägt vor.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage