Skip to main content
CourseFlix

Kotlin Coroutines and Concurrency

0h 0m 0s
English
Paid

This course helps you build a clear, simple mental model of Kotlin coroutines. You will stop guessing why your code works and learn how to use coroutines with confidence.

Why Coroutines Feel Hard

Many developers use coroutines but do not fully understand them. You may write code that you hope works, or avoid coroutines because they feel risky. This often happens when you learn from random posts or talks.

Topics like async code, shared state, context, and scope can look complex when you meet them all at once. Without a clear path, it is easy to feel lost.

How This Course Helps

The course gives you a slow and steady path. Each topic builds on the last one. You learn one idea at a time. You see how coroutines work and why they behave as they do.

You do not need to guess or fill gaps on your own. You get a full picture from start to finish.

What You Will Learn

Clear Concepts

You learn key ideas with simple examples. This helps you see coroutines as a tool, not as magic.

Practical Skills

You learn to write async and concurrent code that you can trust. You learn how to avoid common errors and how to find issues fast.

About the Author: Dave Leeds

Dave Leeds thumbnail

I have been professionally involved in programming for over 25 years. During this time, I have seen how the same ideas can be explained in truly brilliant ways—or, conversely, in ways that are completely incomprehensible. What has helped me the most are great storytelling and vivid imagery: they make complex concepts come alive, become relatable, and much easier to understand. Over time, I realized that I particularly enjoy teaching through creativity—using illustrations, metaphors, and stories that help knowledge "stick" and remain long-lasting. I am the author of the book *Kotlin: An Illustrated Guide*, created to take the reader from a beginner to a confident Kotlin developer. You can also find my videos on YouTube to better understand my teaching style. And if you want to stay updated on everything new in the world of Kotlin and Android—join my livestream The TypeAlias Show, where we regularly discuss the latest news and events.

Watch Online 57 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 57 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Coroutines Lunch & Learn Presentation
All Course Lessons (57)
#Lesson TitleDurationAccess
1
Coroutines Lunch & Learn Presentation Demo
00:00
2
Intro to Coroutines and Concurrency
00:00
3
Suspending Functions
00:00
4
Coroutines in the Standard Library
00:00
5
You'll Need a Scope...
00:00
6
Coroutine Builders: launch() and async()
00:00
7
Threads and Dispatchers
00:00
8
Coroutine Context
00:00
9
Ways to Get a Scope
00:00
10
Introduction to Shared Mutable State
00:00
11
Avoiding Shared Mutable State
00:00
12
Confinement
00:00
13
Mutex Locks
00:00
14
Atomics
00:00
15
Structured Programming and Structured Concurrency
00:00
16
Creating Structured Concurrency
00:00
17
Scopes and Suspending Functions
00:00
18
Structured Concurrency in Practice
00:00
19
Cancellations
00:00
20
Managing Cancellations
00:00
21
Exceptions in Coroutines
00:00
22
Supervisors
00:00
23
CoroutineExceptionHandler
00:00
24
Avoiding Unnecessary Coroutines
00:00
25
Attaching a Scope to a Lifecycle
00:00
26
Passing Scopes and Dispatchers
00:00
27
Wrapping Callback-Based APIs
00:00
28
Characteristics of Collections and Sequences
00:00
29
Flows, Collectors, and Emitters
00:00
30
Flow Operators
00:00
31
Flow and Cancellations
00:00
32
Flow and Exceptions
00:00
33
Intro to Multi-Coroutine Flows
00:00
34
Multi-Coroutine Flow Operators
00:00
35
Putting Flows Together
00:00
36
Flattening Flows
00:00
37
Introduction to Hot Flows
00:00
38
SharedFlow
00:00
39
StateFlow
00:00
40
Converting Cold Flows into Hot Flows
00:00
41
Intro to Workflows
00:00
42
Channel Basics
00:00
43
Complex Workflows
00:00
44
Produce and Select
00:00
45
Actors
00:00
46
Terminating Channels
00:00
47
Channels and Flows
00:00
48
Basics of Testing Concurrent Code
00:00
49
Controlling Time in Tests
00:00
50
Testing Coroutines on External Scopes
00:00
51
Testing Flows
00:00
52
Debugging with Coroutine IDs and Names
00:00
53
Debugging Coroutines in the IDE
00:00
54
The Coroutines Debugging Library
00:00
55
Coroutines in Spring Framework
00:00
56
Coroutines in Ktor Server and Client
00:00
57
Coroutines in Compose Apps
00:00
Unlock unlimited learning

Get instant access to all 56 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Books

Read Book Kotlin Coroutines and Concurrency

#TitleTypeOpen
1Chapter 20 - Coroutine Essentials
2Field Guide to Kotlin Terms
3Preventing Race Conditions in Coroutines
4Coroutines - Mental Model - Printer Friendly
5Coroutines - Mental Model