Sobes.tech
Junior — Middle

Корутина жардамында бир нече тапшырмаларды бир убакта кантип ишке ашырууга болот?

sobes.tech AI

AIден жооп

Kotlin'de korutinler yordamida bir vaqtning o'zida bir nechta vazifani bajarish uchun:

  • launch — yangi korutinani ishga tushiradi va bu boshqa korutinlar bilan parallel ravishda ishlaydi.
  • async — korutinani ishga tushiradi, u Deferred orqali natija qaytaradi.

Ikki vazifani bir vaqtning o'zida boshlash va ularning natijalarini kutish misoli:

import kotlinx.coroutines.*

fun main() = runBlocking {
    val job1 = async {
        delay(1000)
        "Vazifa 1 natijasi"
    }
    val job2 = async {
        delay(500)
        "Vazifa 2 natijasi"
    }

    // Ikkala natijani kutamiz
    val result1 = job1.await()
    val result2 = job2.await()

    println(result1)
    println(result2)
}

Шу тариқда, korutinlar бир неча вазифани осонлик билан параллел бошлаш ва уларнинг натижаларини синхронлаштириш имконини беради.