@ech0s7r Kotlin was specifically built with Java/JVM interop in mind. Ability to use all Java/JVM libraries (including concurrency libraries) was an explicit design goal. Even though Kotlin has ambitions beyond JVM, the implementation of Kotlin/JVM gives you access to all the JVM-specific concurrency features via JVM-specific annotations (
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/index.html) where you’ll find both
Synchronized
and
Volatile
that work exactly like in Java, because they compile to JVM in the same way as in Java.