ich in onCreate
über diese Schnipsel zwei AsyncTasks parallel bin Aufruf:Wie kann ich überprüfen, ob beide parallel AsyncTask Threads fertig sind
if ((DictMode.equals("TATOEBA")) || (DictMode.equals("SENTENCE"))) {
dictAsyncTask = new DictAsyncTask(DictionaryLookUp.this, "Tatoeba");
// dictAsyncTask.execute();
dictAsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
if ((DictMode.equals("JUKUU")) || (DictMode.equals("SENTENCE"))) {
dictAsyncTask = new DictAsyncTask(DictionaryLookUp.this, "Jukuu");
// dictAsyncTask.execute();
dictAsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
während onPostExecute
ich überprüfen, ob alle Daten abgerufen wird und von der Rückkehr startActivityForResult
Anruf über finish
:
if (alldictStuff.size() == 0) {
...
Toast.makeText(DictionaryLookUp.this,"NOTHING FOUND ...",Toast.LENGTH_SHORT).show();
if ((DictMode.equals("TATOEBA")) || (DictMode.equals("JUKUU")) || (DictMode.equals("SENTENCE"))) {
Intent intentCard = new Intent(getApplicationContext(), CardView.class);
setResult(Activity.RESULT_OK);
finish();
}
aber das ist offensichtlich fehlerhaft sin ce Ich überprüfe nicht, ob beide Threads keine Ergebnisse zurückgeben, also was ist der beste Weg zu überprüfen, ob beide Threads fertig sind und nichts zurückgegeben? Muss ich meine eigenen Variablen verwenden, um sie zu verfolgen, oder gibt es etwas Ordentliches/Integriertes, das ich nutzen kann?