Sobes.tech
Junior — Middle

Ինչպե՞ս կարելի է իրականացնել միաժամանակյա մի քանի առաջադրանքների կատարմանը օգտագործելով կորուտիններ:

sobes.tech AI

Պատասխան AI-ից

Kotlin- ում միաժամանակ մի քանի առաջադրանքների կատարման համար կարող եք օգտագործել՝

  • launch — սկսում է նոր coroutine, որը կատարվում է մյուսների հետ параллельно:
  • async — սկսում է coroutine, որը վերադարձնում է արդյունք Deferred-ի միջոցով:

Օրինակ՝ երկու առաջադրանքների միաժամանակյա մեկնարկ և արդյունքների սպասում:

import kotlinx.coroutines.*

fun main() = runBlocking {
    val job1 = async {
        delay(1000)
        "Առաջադրանքի 1 արդյունքը"
    }
    val job2 = async {
        delay(500)
        "Առաջադրանքի 2 արդյունքը"
    }

    // սպասում ենք երկու արդյունքներին
    val result1 = job1.await()
    val result2 = job2.await()

    println(result1)
    println(result2)
}

Այսպիսով, coroutine-ները հեշտությամբ թույլ են տալիս միաժամանակ սկսել մի քանի առաջադրանք և սինխրոնիզացնել նրանց արդյունքները։