首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >微基准比较Scala可变、不可变集合与java.util.concurrent.*集合

微基准比较Scala可变、不可变集合与java.util.concurrent.*集合
EN

Stack Overflow用户
提问于 2011-09-27 19:49:12
回答 3查看 1.2K关注 0票数 5

在多线程环境中,有没有发布的微基准来比较Scala可变集合和不可变集合以及java.util.concurrent中的集合?我特别感兴趣的是读者数量远远超过作者的情况,比如在服务器端代码中缓存HashMaps。

Clojure集合的微基准测试也是可以接受的,因为它们的算法与Scala2.8持久集合中使用的算法相似。

如果还没有完成,我会编写自己的,但是编写好的微基准测试并不容易。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-28 20:10:28

这里有一些比较Java散列映射、Scala散列映射、Java并发散列映射、Java并发跳过列表、Java并行数组和Scala并行集合的结果(在技术报告的末尾):

http://infoscience.epfl.ch/record/165523/files/techrep.pdf

这里有并发跳过列表和Java并发散列映射的更详细的比较(也在报告主要部分的末尾,附录之前):

http://infoscience.epfl.ch/record/166908/files/ctries-techreport.pdf

这些微基准测试专注于测试单个操作的性能。如果您计划编写自己的基准测试,这可能会很有用:

http://buytaert.net/files/oopsla07-georges.pdf

票数 2
EN

Stack Overflow用户

发布于 2016-10-15 01:28:55

李浩一的Benchmarking Scala Collections是一个详细和全面的研究,解决了您的问题。在这里引用太长了。

票数 1
EN

Stack Overflow用户

发布于 2011-09-28 02:47:59

那你为什么不试试使用java.util.concurrent.ConcurrentHashMap呢?这样你就不必同步了,你的百万次读操作将会快得多(就像一次写操作一样)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7568608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档