Junior — Middle
Kādiem metodiem un rīkiem Android var īstenot uzdevumu izpildi asinhroni?
sobes.tech AI
Atbilde no AI
Android var izmantot vairākus metodes un rīkus uzdevumu veicšanai asinhroni:
- AsyncTask (novecojis, bet joprojām bieži sastopams vecajā kodā) — ļauj veikt operācijas fonā ar UI atjauninājumu.
- Handler un HandlerThread — pārvaldīt ziņojumu rindas un veikt uzdevumus atsevišķās pavedienos.
- Executor un ThreadPoolExecutor — pārvaldīt pavedienu baseinu.
- RxJava — reaktīvās programmēšanas bibliotēka, noderīga asinhronām operācijām.
- Coroutines (Korutinas) — mūsdienīgs un ieteicams veids asinhronai programmēšanai Kotlin.
- WorkManager — priekš aizkavētām un periodiskām uzdevumiem, kas jāizpilda pat tad, ja lietotne ir slēgta.
Korutinu piemērs asinhronai uzdevumam:
import kotlinx.coroutines.*
fun fetchData() {
GlobalScope.launch(Dispatchers.Main) {
val data = withContext(Dispatchers.IO) {
// Ilga operācija, piemēram, tīkla pieprasījums
loadDataFromNetwork()
}
// UI atjaunināšana ar saņemtajiem datiem
updateUI(data)
}
}