赞
踩
ConcurrentHashMap并发安全实现源码如下。
- public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements ConcurrentMap<K,V>,
- Serializable {
-
- /* --------- 常量及成员变量的设计 几乎与HashMap相差无几 -------- */
-
- /**
- * 最大容量
- */
- private static final int MAXIMUM_CAPACITY = 1 << 30;
-
- /**
- * 默认初始容量
- */
- private static final int DEFAULT_CAPACITY = 16;
-
- /**
- * 单个数组最大容量
- */
- static final int MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8;
-
- /**
- * 默认并发等级,也就分成多少个单独上锁的区域
- */
- private static final int DEFAULT_CONCURRENCY_LEVEL = 16;
-
- /**
- * 扩容因子
- */
- private static final float LOAD_FACTOR = 0.75f;
-
- /**
- *
- */
- transient volatile Node<K,V>[] table;
-
- /**
- *
- */
- private transient volatile Node<K,V>[] nextTable;
-
- /* --------- 系列构造方法,依然推荐在初始化时根据实际情况设置好初始容量 -------- */
- public Concur
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。