这是场景。我在Scala中创建一个简单的会话处理程序,我需要一个可以存储列表的类。该类需要与其相关的其他功能才能正常运行。
我将通过会话ID访问会话 我很少会遍历这份名单 我将不断添加和删除列表
我的问题:
我对Scala相当新,所以请原谅我可能要问的基本问题。非常感谢任何帮助。
编辑:要添加全部...线程安全是一个因素。使用的对象必须是线程安全的,或者在按会话ID添加和删除项目时,必须容易允许线程安全。
答案 0 :(得分:2)
您可以使用java.util.concurrent.ConcurrentHashMap
- 它具有最佳性能和保证线程安全性。
答案 1 :(得分:1)
您可以使用immutable implementation of HashSet添加和删除操作有效地保持恒定时间。
一旦这个集合是不可变的,你将需要学习使用集合的“scala方式”,如何处理状态等等。也许你需要改变你处理集合的方式,但这样你就不用担心并发了。
答案 2 :(得分:1)
val list = new List(1,2,3,4,5,6,7,8,9,10)