Sobes.tech
Junior — Middle

Kako se može realizovati istovremeno izvršavanje više zadataka pomoću korutina?

sobes.tech АИ

Одговор од АИ

Za istovremeno izvršavanje više zadataka pomoću korutina u Kotlinu, možete koristiti:

  • launch — pokreće novu korutinu koja se izvršava paralelno sa drugim.
  • async — pokreće korutinu koja vraća rezultat putem Deferred.

Primer istovremenog pokretanja dva zadatka i čekanja na njihove rezultate:

import kotlinx.coroutines.*

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

    // Čekamo oba rezultata
    val result1 = job1.await()
    val result2 = job2.await()

    println(result1)
    println(result2)
}

Na ovaj način, korutine omogućavaju lako pokretanje više zadataka paralelno i sinhronizaciju njihovih rezultata.