Junior — Middle
Hogyan valósítható meg több feladat egyidejű végrehajtása korutinok segítségével?
sobes.tech MI
Válasz az MI-től
A Kotlinban a coroutine-ok segítségével több feladat egyidejű végrehajtásához használhatod:
launch— új coroutine-t indít, amely párhuzamosan fut másokkal.async— egy coroutine-t indít, amely eredményt ad vissza aDeferredsegítségével.
Példa két feladat egyidejű indítására és eredményeik várására:
import kotlinx.coroutines.*
fun main() = runBlocking {
val job1 = async {
delay(1000)
"Feladat 1 eredménye"
}
val job2 = async {
delay(500)
"Feladat 2 eredménye"
}
// Mindkét eredményt várjuk
val result1 = job1.await()
val result2 = job2.await()
println(result1)
println(result2)
}
Így a coroutine-ok lehetővé teszik több feladat könnyű párhuzamos indítását és eredményeik szinkronizálását.