396 votes

Exécution du code dans le thread principal à partir d'un autre thread

Dans un service Android, j'ai créé un ou plusieurs threads pour effectuer certaines tâches en arrière-plan.

J'ai une situation où un thread doit poster une certaine tâche sur la file d'attente des messages du thread principal, par exemple un Runnable .

Y a-t-il un moyen d'obtenir Handler du fil de discussion principal et de poster Message / Runnable à partir de mon autre fil ?

2 votes

Vous pouvez également utiliser le récepteur de radiodiffusion personnalisé.... essayer ma réponse ici, [Récepteur de radiodiffusion interne][1] [1] : stackoverflow.com/a/22541324/1881527

0 votes

Il existe de nombreuses façons de le faire. En dehors de la réponse de David et du commentaire de dzeikei dans sa réponse, (3) vous pouvez utiliser un récepteur de diffusion, ou (4) passer le gestionnaire dans les extras de l'Intent utilisé pour démarrer le service, et ensuite récupérer le gestionnaire du thread principal dans le service en utilisant getIntent().getExtras() .

2 votes

@sazzad-hissain-khan, Pourquoi taguer cette question de 2012 avec des réponses majoritairement en Java avec le tag kotlin ?

-1voto

Avec Kotlin, c'est comme ça à l'intérieur de n'importe quelle fonction :

runOnUiThread {
   // Do work..
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X