Overview
Explore the world of asynchronous programming with Kotlin coroutines in this 59-minute conference talk by Svetlana Isakova at NDC Conferences. Dive into the concept of coroutines, lightweight threads that can be suspended and resumed, and discover how they simplify asynchronous code. Learn about the power of async/await functions and their implementation using coroutines in Kotlin. Understand the benefits of defining asynchronous computations with suspend functions, and explore practical examples such as loading images. Delve into coroutine builders, call stacks, and context specification. Address common issues like leaking coroutines and discover solutions through structural concurrency. Examine different types of channels, including "Rendezvous" channel semantics, and gain insights into suspended coroutines. By the end of this talk, acquire new ways to write clear, efficient asynchronous code using Kotlin coroutines.
Syllabus
Intro
async and await are functions defined in the standard library
Example: simple consecutive logic
Rewrite with suspend functions
Coroutine builders
Simple "load image" example
async creates a new coroutine: starts a new asynchronous computation
Call stack of a coroutine
Specify the context
Structural concurrency
Two asynchronous coroutines
Problem: leaking coroutine
Enforcing structure
Types of Channels
"Rendezvous" channel semantics
Suspended coroutine
Taught by
NDC Conferences