Difference between launch and async in Kotlin Coroutines

This tests your grasp of coroutine result handling and exception propagation. Explain that `launch` is fire-and-forget (returns `Job`), while `async` is for results (returns `Deferred`). Mention `async` defers exceptions until `await()`.
This tests your grasp of structured concurrency, specifically coroutine result handling and exception propagation. A great answer defines `launch` as fire-and-forget (returns `Job`) for side effects, and `async` for results (returns `Deferred<T>`). Critically, explain that `launch` propagates exceptions immediately, while `async` defers them until `await()` is called. A common red flag is ignoring this key exception handling difference.
Read the original → kotlinlang.org
- #kotlin
- #coroutines
- #concurrency
- #android
Get five bites like this every day.
Tezvyn delivers a daily feed of 60-second tech bites with quizzes to lock in what you learn.