4

在我的 Scala 应用程序中,我需要使用几个经常更新的地图和列表。Scala中是否有维护插入顺序的线程安全集合?

4

1 回答 1

5

是的,scala.collection.concurrent包中有一个特性:concurrent.Map它只是一个特性,所以只需将此特性混入您的 Map 中,它将成为线程安全的。

如果您需要一个好的并发地图,请尝试使用 google 的ConcurrentLinkedHashMap并使用Scala/Java 转换器将其转换为 Scala Map ,这将提供比 mixin 更高的性能SynchronizedMap。例如我最喜欢的Spray工具包,其用作实现其缓存模块的核心结构。如您所见,spray 是最快的 Scala web 工具包。

于 2013-07-09T05:23:47.467 回答