Sobes.tech
Junior — Middle

Cum se implementează multithreading-ul într-un program?

sobes.tech AI

Răspuns de la AI

Pentru implementarea multitreading-ului (multithreading) într-o aplicație Android, se pot folosi mai multe abordări:

  1. Clasa Thread — creați un nou fir de execuție suprascriind metoda run():
new Thread(new Runnable() {
    @Override
    public void run() {
        // cod executat într-un fir separat
    }
}).start();
  1. Utilizarea Handler și Looper — pentru schimbul de mesaje între fire.

  2. AsyncTask (învechit, dar încă frecvent utilizat) — simplifică executarea sarcinilor de fundal cu actualizarea UI.

  3. ExecutorService — pool de fire pentru gestionarea mai multor sarcini.

  4. Corutine Kotlin — metodă modernă și convenabilă de programare asincronă, care permite scrierea de cod asemănător cu cel sincron.

Exemplu de creare și pornire a unui fir:

Thread thread = new Thread(new Runnable() {
    @Override
    public void run() {
        // Operație lungă
    }
});
thread.start();

Este important să rețineți că actualizarea UI trebuie să se facă doar în firul principal (UI thread), așa că pentru transmiterea rezultatelor din firul de fundal se folosesc Handler, runOnUiThread() sau alte mecanisme.