Sobes.tech
Junior — Middle

Come si può implementare l'esecuzione simultanea di più compiti usando le coroutine?

sobes.tech AI

Risposta dell'AI

Per eseguire più attività contemporaneamente con le coroutine in Kotlin, puoi usare:

  • launch — avvia una nuova coroutine che viene eseguita in parallelo con altre.
  • async — avvia una coroutine che restituisce un risultato tramite Deferred.

Esempio di avvio simultaneo di due attività e attesa dei loro risultati:

import kotlinx.coroutines.*

fun main() = runBlocking {
    val job1 = async {
        delay(1000)
        "Risultato del compito 1"
    }
    val job2 = async {
        delay(500)
        "Risultato del compito 2"
    }

    // Aspettiamo entrambi i risultati
    val result1 = job1.await()
    val result2 = job2.await()

    println(result1)
    println(result2)
}

In questo modo, le coroutine permettono di avviare facilmente più attività in parallelo e di sincronizzarne i risultati.