Sobes.tech
Junior — Middle

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:

  1. 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();
  1. Utilisation de Handler et Looper — pour échanger des messages entre threads.

  2. AsyncTask (obsolète, mais encore couramment utilisé) — facilite l'exécution de tâches en arrière-plan avec mise à jour de l'UI.

  3. ExecutorService — pool de threads pour gérer plusieurs tâches.

  4. 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.