目录
目标
实现线程安全的hashmap。
实现简单的缓存组件。
如何使用读写锁。
AQS原理。
ReadWriteLock
使用场景:
- 对集合操作可以实现并发读,互斥写,即给读加读锁,写加写锁。
-
改进提升互斥锁的性能。
锁降级:获取写锁后,可以在获取读锁,即拿着写锁,获取读锁。

基本原理

AQS抽象队列同步器
对加锁解锁的公共代码的抽象,try方法留给用户自己实现。
提供公共的逻辑,真正的加锁逻辑,由用户自己实现,AQS不会实现真正的抢锁逻辑。
可以理解为实现锁的一个工具类,利用模版方法模式抽出公共代码。
读写锁是由AQS来实现的。

ReadWriteLock用一个int存储了两个count值
