Junior — Middle
Ako implementovať multithreading v programe?
sobes.tech AI
Odpoveď od AI
Pre implementáciu multithreadingu (multithreading) v Android aplikácii je možné použiť niekoľko prístupov:
- Trieda Thread — vytvorenie nového vlákna prepísaním metódy
run():
new Thread(new Runnable() {
@Override
public void run() {
// kód vykonávaný v samostatnom vlákne
}
}).start();
-
Použitie Handlera a Loopera — na výmenu správ medzi vláknami.
-
AsyncTask (zastaralé, ale ešte často používané) — zjednodušuje vykonávanie úloh na pozadí s aktualizáciou UI.
-
ExecutorService — pool vlákien na správu viacerých úloh.
-
Kotlin Coroutines — moderný a pohodlný spôsob asynchrónneho programovania, ktorý umožňuje písať kód podobný synchronnému.
Príklad vytvorenia a spustenia vlákna:
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// Dlhá operácia
}
});
thread.start();
Dôležité je pamätať, že aktualizácia UI by mala prebiehať iba v hlavnom vlákne (UI thread), preto na odovzdanie výsledkov z pozadia sa používajú Handler, runOnUiThread() alebo iné mechanizmy.