Sobes.tech
Junior — Middle

El tudnád magyarázni a runBlocking funkció célját a Kotlin Coroutines-ban?

sobes.tech MI

Válasz az MI-től

A runBlocking funkció a Kotlin Coroutines-ben blokkoló módban indít coroutine-okat, vagyis blokkolja az aktuális szálat, amíg az összes benne lévő coroutine be nem fejeződik.

Ez hasznos például a program belépési pontjainál (main függvény) vagy tesztekben, ahol aszinkron kódot kell futtatni és szinkron módon várni az eredményt.

Használati példa:

fun main() = runBlocking {
    launch {
        delay(1000L)
        println("Üdv a coroutine-ból")
    }
    println("Kezdés")
}

Itt a runBlocking blokkolja a fő szálat, amíg a belső coroutine be nem fejeződik.