决战圣地玛丽乔亚Day29

今日目标(AQS):

AQS(抽象队列同步器):

相当于实现锁的一系列模板方法。

如果要实现锁,需要:

1.锁是否被占用的状态值。

2.阻塞/唤醒

3.竞争失败的队列

AQS中:

state:状态信息,不同的锁的用途不同

Node:阻塞队列等的节点信息(pre,next,thread)都是用volatile进行修饰。thread直接放入队列不好,用节点来代替。

阻塞唤醒:使用LockSupport中的工具类方法

当前持有锁的线程:使用了抽象类AbstractOwnableSynchronizer,进行getset

 

posted @   NobodyHero  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
历史上的今天:
2017-03-09 常用类---随机数Radom
2017-03-09 常用类---String类方法2
点击右上角即可分享
微信分享提示