Comment implémenter le multithreading dans un programme?
sobes.tech IA
Réponse de l'IA
Pour implémenter la multitâche (multithreading) dans une application Android, plusieurs approches peuvent être utilisées:
- Classe Thread — créer un nouveau thread en redéfinissant la méthode
run():
new Thread(new Runnable() {
@Override
public void run() {
// code exécuté dans un thread séparé
}
}).start();
-
Utilisation de Handler et Looper — pour échanger des messages entre threads.
-
AsyncTask (obsolète, mais encore couramment utilisé) — facilite l'exécution de tâches en arrière-plan avec mise à jour de l'UI.
-
ExecutorService — pool de threads pour gérer plusieurs tâches.
-
Coroutines Kotlin — méthode moderne et pratique pour la programmation asynchrone, permettant d'écrire du code ressemblant à du code synchrone.
Exemple de création et de lancement d'un thread:
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// Opération longue
}
});
thread.start();
Il est important de se rappeler que la mise à jour de l'UI doit se faire uniquement dans le thread principal (UI thread), donc pour transmettre des résultats depuis un thread en arrière-plan, on utilise Handler, runOnUiThread() ou d'autres mécanismes.