Junior — Middle
İki müxtəlif mənbədən eyni zamanda asinxron məlumat yükləyən funksiya necə həyata keçirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Android-də iki müxtəlif mənbədən məlumatların asinxron yüklənməsi üçün Kotlin Coroutines istifadə edə bilərsiniz. Bu, iki əməliyyatı paralel şəkildə işə salmağa və onların tamamlanmasını gözləməyə imkan verir.
Nümunə:
import kotlinx.coroutines.*
fun loadData() {
CoroutineScope(Dispatchers.IO).launch {
val deferred1 = async { loadFromSource1() }
val deferred2 = async { loadFromSource2() }
val result1 = deferred1.await()
val result2 = deferred2.await()
withContext(Dispatchers.Main) {
// Nəticələrin əsas axında işlənməsi
println("Nəticə 1: $result1")
println("Nəticə 2: $result2")
}
}
}
suspend fun loadFromSource1(): String {
// Məlumatların yüklənməsinin simulasyonu
delay(1000)
return "Mənbədən 1 məlumatları"
}
suspend fun loadFromSource2(): String {
// Məlumatların yüklənməsinin simulasyonu
delay(1500)
return "Mənbədən 2 məlumatları"
}
Bu nümunədə, iki yükləmə funksiyası paralel şəkildə işə salınır və onların tamamlanmasından sonra nəticələr işlənir.