Sobes.tech
Junior — Middle

Čo znamená pojem 'single' v kontexte korutín a ako sa používa?

sobes.tech AI

Odpoveď od AI

V kontexte korutín v Android (Kotlin) sa termínom single zvyčajne odkazujeme na operátor alebo funkciu, ktorá vráti presne jeden prvok z dátového toku (napríklad z Flow alebo RxJava). V Kotlin Flow je single() terminálna operácia, ktorá očakáva, že tok emituje presne jeden prvok a ten vráti. Ak je emisia viac alebo menej prvkov, bude vyvolaná výnimka.

Príklad použitia s Flow:

val flow = flowOf(42)
val value = flow.single() // vráti 42

Ak je tok prázdny alebo obsahuje viac než jeden prvok, single() spôsobí chybu.

Preto sa single používa, keď sa očakáva presne jeden výsledok z asynchrónneho toku dát.