I thought I understood Kotlin coroutines until I actually timed them 🤯
"Concurrent" ≠ faster
"Asynchronous" ≠ “concurrent"
Built experiments to see what's really happening. Results were surprising.
Understanding Kotlin Coroutines: A Deep Dive into Blocking vs Non-blocking and Concurrent vs Asynchronous Execution
If you’ve ever felt confused about when coroutines actually run concurrently versus asynchronously, or why some operations seem to block despite using suspend functions, you're not alone. Today…