Kotlin Native Concurrency Explained

Kevin Galligan



Kevin Galligan is a Partner at Touchlab. He has 20 years of professional software development experience, and has been working on Android since the first public platform release. Kevin is currently focused on developing and evangelizing Kotlin multiplatform native tools for the next generation of mobile development.


There is a lot of excitement about Kotlin Native and Multiplatform for shared code in the native mobile world. However, one of the most confusing and controversial features is Kotlin Native's state and concurrency model. For an experienced JVM or Objc/Swift developer, these rules will seem very restrictive, and in some cases, discourage adoption. However, having spent the past year diving into Kotlin Native, I think these rules are simple and make sense. We just need better docs, libraries, and examples,

In this talk we'll:

- Explain how Kotlin Native's state and concurrency works.

- Discuss why these decisions were made.

- Give some thoughts on rethinking architecture.

- Show how to work around these rules when you need to.

- Give an overview of how this all works in a multiplatform context.