大佬教程收集整理的这篇文章主要介绍了ConcurrentHashMap jdk 8使用TreeNodes代替List ..为什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
主要更改是添加ConcurrentHashMap
了新Java
8默认@H_420_3@map方法的特定实现,并具有依赖于内部细节的更好的并发实现。这些更改需要大量新的内部类,这些内部类使.java文件膨胀
例如,其中一些方法包括:
计算(K键,BiFunction remappingFunction)
forEach(BiConsumer操作)
合并(K键,V值,BiFunction remappingFunction)
仅举几个。
我认为这也说明了为什么您通常不必关心无需维护类的工作方式的实现细节。只要该类遵循其javadoc中规定的约定,您就应该对它的工作方式不可知,因为将来实现的详细信息可能会更改。
嗨,我知道ConcurrentHashMap
JDK 8之前的工作原理。我也理解了代码:它是模块化的,而且很难理解。
ConcurrentHashMap
JDK 8中的代码与以前的实现相比已发生了很大变化。
由于此问题被归类为过于广泛,因此我现在将尝试非常具体。
CHMv8使用TreeBin(RedBlackTree的变体)存储桶,而不是使用链表。
所以我的问题是使用TreeBin而不是链接列表的主要优点是什么?
源代码在这里
以上是大佬教程为你收集整理的ConcurrentHashMap jdk 8使用TreeNodes代替List ..为什么?全部内容,希望文章能够帮你解决ConcurrentHashMap jdk 8使用TreeNodes代替List ..为什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。