标签:ConcurrentHashMap

JAVA

面试题:链表为什么使用内部类实现?

herman 6个月前 (04-08) 223浏览

最近推广了一个关于面试的活动。我看了一下章节,其中有一个面试题是说什么是内部类?内部类的特点是什么? 看到这个题,我突然想到,工作这么多年,对内部类的关注一直都比较少。于是,在一次面试的机会中,我问了一个号称有 10 年工作经验的程序员:“链...

JAVA

HashMap 在JDK1.8与JDK1.7的性能测试对比

herman 10个月前 (11-20) 886浏览

任何数据结构的产生总对应着要解决一个实际的问题!我在《HashMap 存在的意义是什么?》这篇文章中总结到:HashMap 这种数据结构解决存取一组 key-vaule 键值对数据,并且在插入、删除、遍历都有不错性能的数据结构。我们也知道,JDK...

JAVA

从 HashMap 的扩容机制来说它为什么不是线程安全的!

herman 10个月前 (11-20) 342浏览

我在前面的文章《Java 线程安全的3大核心:原子性、可见性、有序性》中已经说到了什么是线程安全!根据这篇文章,我们对照着 HashMap 来说说它为什么不是线程安全的? 前面我也强调过多次,回答是不是线程安全的请从:原子性、可见性、有序性...

JAVA

HashMap 存在的意义是什么?

herman 10个月前 (11-20) 741浏览

我一直在思考一个问题:HashMap 存在的意义是什么?也就是说 Java 为什么要设计 HashMap?我问了很多面试者以及很多 CSDN 的博客专家都没有找到想要的答案!于是我自己查了很多资料想找 HashMap 为什么需要这样设计?最终都没...

JAVA

学会 Java 中的锁,你只需要记住 6 句法则即可!

herman 10个月前 (11-17) 586浏览

Java 中日常用到的锁大概有 14 种:悲观锁、乐观锁、自旋锁、适应性自旋锁、无锁、偏向锁、轻量级锁、重量级锁、公平锁、非公平锁、可重入锁、非可重入锁、独享锁、共享锁。 每种锁都有不同的使用场景!具体哪种场景使用哪种锁,你只需要回答下面 ...

JAVA

HashMap 的实现原理

herman 1年前 (2018-06-17) 873浏览 0评论

众所周知,HashMap是用来存储Key-Value键值对的一种集合,这个键值对也叫做Entry,而每个Entry都是存储在数组当中,因此这个数组就是HashMap的主干。 HashMap数组中的每一个元素的初始值都是NULL  ...

JAVA

Java HashMap 的死循环(HashMap Infinite Loop)

herman 1年前 (2018-06-17) 599浏览 0评论

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历过,本来觉得没什么好写的,因为Ja...

JAVA

java ConcurrentHashMap 教程

xmt_herman_gcy 2年前 (2017-07-06) 764浏览 0评论

ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable。 集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程...

JAVA

java 中 HashMap 和 Hashtable 之间的不同

herman 2年前 (2017-05-12) 909浏览 0评论

关于 HashMap 和 Hashtable 之间的不同?网上有大批的网友在讨论,而在我看来,他们都没有Stackoverflow上一位网友总结的全面。因此在这里摘录一下,方面自己加深理解! 链表的存储结构 Hash...