首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Java8有Arrays.parallelSort()而没有Collections.parallelSort()?

为什么Java8有Arrays.parallelSort()而没有Collections.parallelSort()?
EN

Stack Overflow用户
提问于 2014-12-24 02:36:42
回答 1查看 1.2K关注 0票数 9

Java8引入了一种并行算法,以重载Arrays.sort()方法的形式对数组进行多线程排序。

为什么它不还提供一个Collections.parallelSort(),用于List的多线程排序

EN

回答 1

Stack Overflow用户

发布于 2014-12-26 18:58:25

List不一定允许高效地实现与数组相同的并行排序算法。您可能能够将其直接应用于ArrayList,但很可能不会应用于LinkedList,因为它缺乏有效的随机访问。对于这类列表,有一些高效的多线程排序算法,但它们不同于随机访问列表。

事实上,由于同步,List接口的线程安全实现可能根本不支持有效的外部多线程排序。为它们提供通用的排序算法是不可能的,事实上,并行算法在它们上可能比顺序算法慢。

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

https://stackoverflow.com/questions/27626148

复制
相关文章

相似问题

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