Sobes.tech
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)
    }
}