Je fais actuellement quelque chose comme ça dans la méthode onPostExecute de AsyncTask, où NewTask
est pas la tâche en cours qui est l'exécution:Android AsyncTask À partir Une autre AsyncTask
private class OlderTask extends AsyncTask<String, Void, Integer> {
//other functions (not important)
@Override
protected void onPostExecute(Integer result) {
new NewTask().execute(null, null);
}
}
Je me demande si cela est une mauvaise idée. Cela va-t-il entraîner l'attente de la NewTask par GC pour la OlderTask? Y a-t-il d'autres problèmes possibles avec l'utilisation d'une telle approche?
Et si c'est un problème, comment puis-je le corriger?
Merci. La même logique s'appliquerait-elle si 'OlderTask' crée une nouvelle' OlderTask'? – yydl
Tant que c'est une instance différente de 'OlderTask' et qu'elle ne fait pas référence à l'instance précédente directement ou indirectement. –