摘要: ReentrantReadWriteLock 源码分析: 1:数据结构: 成员变量: private final ReentrantReadWriteLock.ReadLock readerLock; //读取锁 private final ReentrantReadWriteLock.WriteL 阅读全文
posted @ 2019-07-19 17:38 beppezhang 阅读(319) 评论(0) 推荐(0) 编辑
摘要: ReentrantLock 锁释放源码分析: 调用的是unlock 的方法: public void unlock() { sync.release(1); } 接下来分析release() 方法: public final boolean release(int arg) { // arg=1 i 阅读全文
posted @ 2019-07-19 17:36 beppezhang 阅读(275) 评论(0) 推荐(0) 编辑
摘要: HashMap 源码分析 基于jdk1.8分析 1:数据结构: transient Node<K,V>[] table; //这里维护了一个 Node的数组结构; 下面看看Node的数据结构,Node是它的一个内部类: static class Node<K,V> implements Map.En 阅读全文
posted @ 2019-07-19 17:25 beppezhang 阅读(310) 评论(0) 推荐(0) 编辑
摘要: CountDownLatch 源码分析: 1:CountDownLatch数据结构 成员变量 Sync类型对象 private final Sync sync; Sync是继承AQS的一个类,CountDownLatch是通过AQS和CAS来实现它的锁的功能的; 2构造方法: public Coun 阅读全文
posted @ 2019-07-19 17:20 beppezhang 阅读(577) 评论(0) 推荐(0) 编辑
摘要: CopyOnWriteArraySet 源码分析: 1:数据结构: private final CopyOnWriteArrayList<E> al; 内部维护的是一个CopyOnWriteArrayList,所以CopyOnWriteArraySet的实现原理是通过CopyOnWriteArray 阅读全文
posted @ 2019-07-19 17:19 beppezhang 阅读(650) 评论(0) 推荐(0) 编辑
摘要: CopyOnWriteArrayList 源码分析: 1:成员属性: final transient ReentrantLock lock = new ReentrantLock(); //内部是通过ReentrantLock来保证线程安全的,通过一个非公平锁 private transient v 阅读全文
posted @ 2019-07-19 17:18 beppezhang 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1:几个重要的常量定义 private static final int MAXIMUM_CAPACITY = 1 << 30; //map 容器的最大容量 private static final int DEFAULT_CAPACITY = 16; // map容器的默认大小 private s 阅读全文
posted @ 2019-07-19 17:16 beppezhang 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 1:数据结构: transient Object[] elementData; //说明内部维护的数据结构是一个Object[] 数组 成员属性: private static final int DEFAULT_CAPACITY = 10; private static final Object[ 阅读全文
posted @ 2019-07-19 17:14 beppezhang 阅读(180) 评论(0) 推荐(0) 编辑
摘要: // ReentrantLock 源码分析的几个关键点 以公平锁为例 t1 表示线程1 t2 表示线程2 1:t1 第一次获取锁是如何获取成功的?假设锁未被其他线程获取到2:t1 第N次是如何成功获取锁的?假设锁未被其他线程获取到3:当t1获取到锁的情况下,t2是怎么获取锁失败的,当t1 释放锁之后 阅读全文
posted @ 2019-07-02 17:51 beppezhang 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 1: 在virtual box下导入 镜像的时候报错: Failed to open/create the internal network 'HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter #2' (VERR_SUPDRV 阅读全文
posted @ 2018-04-13 15:45 beppezhang 阅读(450) 评论(0) 推荐(0) 编辑