尽管阅读了Kotlin关于集合的文档,但我无法找到Kotlin的可变集合是否线程安全,以及是否有任何并发的替代实现(如Java中的HashMap vs ConcurrentHashMap)
注意:我指的是Kotlin创建的集合:
mutableMapOf<>()
mutableListOf<>()
mutableSetOf<>()
对于mutableMapOf
(MutableMap
),mutableListOf
(MutableList
)或mutableSetOf
(MutableSet
)返回的集合没有线程安全保证。
要实现线程安全,可以用相应的Java Collections包装器对它们进行包装:
val myThreadSafeMap = Collections.synchronizedMap(mutableMapOf())