Maison >Java >javaDidacticiel >Comment publier des tâches sur le fil de discussion principal Android à partir d'un autre fil de discussion ?
Dans les services Android, lors de la création de fils de discussion pour des tâches en arrière-plan, il peut être nécessaire de publier certaines tâches, comme Runnables, sur la file d'attente des messages du fil principal provenant d'un autre fil.
Pour y parvenir, Android propose deux solutions :
Si le fil d'arrière-plan a une référence à un objet Contexte, vous pouvez accéder au gestionnaire du fil principal comme ceci :
// Get a handler that can be used to post to the main thread Handler mainHandler = new Handler(context.getMainLooper()); Runnable myRunnable = new Runnable() { @Override public void run() {....} // This is your code }; mainHandler.post(myRunnable);
Si le thread d'arrière-plan n'a pas d'objet Context, vous pouvez accéder directement au Looper du thread principal et créer un Gestionnaire :
// Get a handler that can be used to post to the main thread Handler mainHandler = new Handler(Looper.getMainLooper()); Runnable myRunnable = new Runnable() { @Override public void run() {....} // This is your code }; mainHandler.post(myRunnable);
Avec l'une ou l'autre de ces approches, vous pouvez publier des tâches dans la file d'attente des messages du fil principal et vous assurer qu'elles sont exécutées dans le fil principal, ce qui vous permet de mettre à jour les composants de l'interface utilisateur ou d'effectuer d'autres opérations nécessitant un accès. aux principales ressources de l'application.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!