Kotlin可变集合线程安全吗?



尽管阅读了Kotlin关于集合的文档,但我无法找到Kotlin的可变集合是否线程安全,以及是否有任何并发的替代实现(如Java中的HashMap vs ConcurrentHashMap)

注意:我指的是Kotlin创建的集合:

mutableMapOf<>()
mutableListOf<>()
mutableSetOf<>()

对于mutableMapOf(MutableMap),mutableListOf(MutableList)或mutableSetOf(MutableSet)返回的集合没有线程安全保证。

要实现线程安全,可以用相应的Java Collections包装器对它们进行包装:

val myThreadSafeMap = Collections.synchronizedMap(mutableMapOf())

最新更新