导图社区 从reentrantlock技术看AQS
从reentrantlock技术看AQS
从BitCoins系统的实现看区块链技术,区块链底层数据结构,密码学等
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
ReentrantLock
renntrantLock特性
它是一个可重入的锁,一个线程能够对临界资源重复加锁。
reentrantlock和sychronized的对比
锁实现机制:R 依赖 AQS S是监视器模式
灵活性: R支持中断超时,尝试获取锁,S不灵活,依靠的是
释放锁形式:R 必须使用unlock()方法进行释放,S自动监控释放
锁类型:R公平锁&非公平锁 S 非公平锁
条件队列:R可关联多个条件队列 S 关联一个条件队列
可重入性: 都是可重入的
Reentrantlock和AQS的关联
NonfairSync
fairSync
acquire(1)
AQS原理分析
AQS 框架
API层
锁获取方法
队列方法层
排队方法层
数据提供层
AQS原理概览
AQS核心思想
如果请求的共享资源空闲,那么就将当前请求资源的线程设置为有效的工作线程,且将共享资源设置为锁定状态
如果共享资源被占用,就需要一定的阻塞等待唤醒 机制来保证锁分配。这个机制主要是用的是CLH队列的变体实现的,将暂时获取不到锁的线程加入到队列中
AQS的数据结构
CLH(队列锁)
lockDeploy
同步状态的分析
ReentrantLock与AQS关联详细分析
通过Reentrantlock 理解AQS
等待队列分析
CANCELWED状态分析
解锁分析
中断回复分析
AQS应用介绍
ReentranLock 克重如机制
在JUC 中的应用中的场景
自定义同步工具