Sobes.tech
Junior — Middle

Wat zijn coroutines en welk concept implementeren ze in programmeren?

sobes.tech AI

Antwoord van AI

Coroutines zijn lichte threads of functies die hun uitvoering kunnen pauzeren en later hervatten, waardoor het schrijven van asynchrone en niet-blokkerende code eenvoudiger en begrijpelijker wordt.

Ze implementeren het concept van coöperatief multitasken, waarbij de controle tussen coroutines expliciet wordt doorgegeven en niet afgedwongen door het besturingssysteem. Dit maakt efficiënt gebruik van bronnen mogelijk en vereenvoudigt het werken met asynchronie.

Voorbeeld in Kotlin (Android):

import kotlinx.coroutines.*

fun main() = runBlocking {
    launch {
        delay(1000L)
        println("Coroutine voltooid")
    }
    println("Programma gestart")
}

Hier start launch een coroutine die 1 seconde pauzeert zonder de hoofdthread te blokkeren.