并发集合——ConcurrentHashMap 源码分析
ConcurrentHashMap是HashMap的线程安全版本,内部也是使用(数组 + 链表 + 红黑树)的结构来存储元素。
ConcurrentHashMap是HashMap的线程安全版本,内部也是使用(数组 + 链表 + 红黑树)的结构来存储元素。
HashMap 采用key/value存储结构,每个key 对应唯一的value,查询和修改的速度都很快,能达到O(1)的平均时间复杂度。它是非线程安全的,且不保证元素存储的顺序。
LinkedHashMap 继承HashMap,拥有HashMap的所有特性,并且添加了顺序访问的特点,HashMap是无序的内部维护一个双向链表, 能保证元素的插入是顺序访问的,也能以访问顺序访问,可以用来实现LRU缓存策略。
WeakHashMap是一种弱引用map,内部的key会存储为弱引用,当jvm gc的时候,如果这些key没有强引用存在的话,会被gc回收掉,下一次当我们操作map的时候会把对应的Entry整个删除掉,基于这种特性,WeakHashMap特别适用于缓存处理。
Copyright ©️ 2020, siran all rights reserved.
模板来自 Bootstrapious. 移植到 Hugo 来自 DevCows.