Kotlin Multiplatform Academy · Les

Dispatchers op verschillende platformen

Dispatchers kiezen die op Android en iOS bestaan

Les 2 van 413 stappen

Dispatchers op verschillende platformen is een gratis Kotlin Multiplatform Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Kotlin Multiplatform Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Kotlin Multiplatform Academy bevat in totaal 4 lessen.

Waar het werk daadwerkelijk wordt uitgevoerd

Een coroutine draait nog steeds op een thread. Een dispatcher bepaalt welke thread of pool wordt gebruikt, en die keuze is op elk platform belangrijk.

Maak kennis met Dispatchers.Default

Gebruik Dispatchers.Default voor CPU-intensief werk, zoals parseren of sorteren. Deze dispatcher bestaat op Android en iOS, zodat gedeelde code erop kan vertrouwen.

withContext(Dispatchers.Default) { sort(data) }

Dispatchers.Main voor de gebruikersinterface

Dispatchers.Main draait op de UI-thread van het platform. Deze is beschikbaar in gedeelde code, maar werk schermen alleen vanaf hier bij.

withContext(Dispatchers.Main) { render(state) }

Het gat bij de IO-dispatcher

Let op: Dispatchers.IO bestaat op de JVM en Android, maar niet in gewone gedeelde code voor elk doel. Ga er niet van uit dat deze overal beschikbaar is.

Blijf in het veilige gedeelde gebied

Geef voor draagbare gedeelde logica de voorkeur aan Default en Main. Deze zijn gegarandeerd voor de doelen die KMP doorgaans ondersteunt.

Wisselen met withContext

Je verplaatst werk tussen threads met withContext. Bereken op Default en schakel daarna over naar Main om het resultaat te publiceren, allemaal in één functie.

val r = withContext(Dispatchers.Default) { heavy() }

Dispatchers zijn inplugbaar

Een dispatcher is gewoon een element van CoroutineContext. Je kunt er een meegeven, waardoor gedeelde code eenvoudig te configureren en te testen is.

class Loader(val io: CoroutineDispatcher)

Injecteren voor testbaarheid

Door de dispatcher mee te geven, kunnen tests deze vervangen door een deterministische dispatcher. Als je hem hard codeert, wordt gedeelde asynchrone logica moeilijker te testen. 🧪

iOS voert ze ook uit

Op iOS worden deze dispatchers automatisch aan de juiste native wachtrijen gekoppeld. Je gedeelde code hoeft niets te weten van GCD-details.

Eén keuze, beide platforms

Omdat de namen van de dispatchers overal hetzelfde zijn, plant dezelfde regel het werk correct op Android en iOS. Geen platformspecifieke vertakkingen in je logica. ✨

Kies het juiste hulpmiddel

Vuistregel: Default voor berekeningen, Main voor UI-updates en injecteer alles wat op IO lijkt, zodat het draagbaar blijft. 🎯

Korte controle

Kies de dispatcheroptie die het veiligst is voor gedeelde KMP-code.

Samenvatting

Je hebt geleerd dispatchers verstandig te kiezen: Default voor berekeningen, Main voor de UI en IO-achtige dispatchers injecteren omdat ze niet op elk doelplatform beschikbaar zijn. 🎉

Gratis beginnen

Leer Kotlin met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
30
Lessen
120

Veelgestelde vragen

Is de les “Dispatchers op verschillende platformen” gratis?

Ja — de volledige tekst van “Dispatchers op verschillende platformen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Kotlin Multiplatform Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Kotlin Multiplatform Academy bevat in totaal 4 lessen.

Wat leer ik in “Dispatchers op verschillende platformen”?

Dispatchers kiezen die op Android en iOS bestaan Je oefent met Kotlin Multiplatform Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Kotlin Multiplatform Academy te beginnen?

Ervaring vooraf is niet nodig. Kotlin Multiplatform Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Dispatchers op verschillende platformen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Kotlin Multiplatform Academy?

Ja. Elke les over Kotlin Multiplatform Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. suspend-functies die overal werken
  2. Dispatchers op verschillende platformen
  3. CoroutineScope en levenscyclus
  4. withContext en structured concurrency
← Terug naar Kotlin Multiplatform Academy