Junior — Middle
Ce metode poți folosi pentru a implementa execuția asincronă a sarcinilor într-o aplicație?
sobes.tech AI
Răspuns de la AI
Pentru executarea asincronă a sarcinilor pe Android, se pot folosi mai multe abordări:
- AsyncTask (învechit, dar încă întâlnit uneori)
- Handler și HandlerThread pentru gestionarea firelor și cozii de mesaje
- Thread / Runnable — crearea și pornirea manuală a firelor noi
- ExecutorService — pool de fire pentru gestionarea sarcinilor
- Coroutines (Kotlin) — metodă modernă și convenabilă pentru programarea asincronă
- RxJava — programare reactivă cu suport pentru asincronie
Exemplu cu Kotlin Coroutines:
import kotlinx.coroutines.*
fun fetchData() {
GlobalScope.launch(Dispatchers.IO) {
val data = networkRequest() // se execută în fir de fundal
withContext(Dispatchers.Main) {
updateUI(data) // actualizare UI în firul principal
}
}
}