Junior — Middle
Čo sú korutiny a aký koncept implementujú v programovaní?
sobes.tech AI
Odpoveď od AI
Korutiny sú ľahké vlákna alebo funkcie, ktoré môžu pozastaviť svoje vykonávanie a neskôr ho pokračovať, čo umožňuje jednoduchšie a prehľadnejšie písanie asynchrónneho a neblokujúceho kódu.
Implementujú koncept kooperatívneho multitaskingu, kde je riadenie medzi korutinami explicitne odovzdávané a nie vynucované operačným systémom. To umožňuje efektívne využívanie zdrojov a zjednodušuje prácu s asynchrónnosťou.
Príklad v Kotlin (Android):
import kotlinx.coroutines.*
fun main() = runBlocking {
launch {
delay(1000L)
println("Korutina ukončená")
}
println("Program spustený")
}
Tu launch spúšťa korutinu, ktorá sa pozastaví na 1 sekundu bez blokovania hlavného vlákna.