文章分类
Java基础
java基础
Map
计算机原理
队列
AQS与同步锁
线程与线程池
IO与网络
java代理
jdbc及其扩展
单元化测试
读书笔记
《spring源码深度解读》
《深入理解JAVA虚拟机》
《MySQL是怎样运行的:从根上理解MySQL》
《Redis开发与运维》
《Java并发编程的艺术》
《Docker与容器云》
中间组件
数据库
大数据组件
缓存
消息组件
运维基础
技术实践
项目源码
com.alibaba.druid
jedis
commons-lang3
java.security
apache.httpclient
java.io
apache.commons.pool2
tomcat
apache.sshd
lombok.log4j2
mybatis
netflix.archius
前端知识
瞬间
相册
朋友圈
留言板
友情链接
沧海月明
解决了什么问题,做了什么优化
累计撰写
149
篇文章
累计创建
33
个标签
累计收到
1
条评论
栏目
文章分类
Java基础
java基础
Map
计算机原理
队列
AQS与同步锁
线程与线程池
IO与网络
java代理
jdbc及其扩展
单元化测试
读书笔记
《spring源码深度解读》
《深入理解JAVA虚拟机》
《MySQL是怎样运行的:从根上理解MySQL》
《Redis开发与运维》
《Java并发编程的艺术》
《Docker与容器云》
中间组件
数据库
大数据组件
缓存
消息组件
运维基础
技术实践
项目源码
com.alibaba.druid
jedis
commons-lang3
java.security
apache.httpclient
java.io
apache.commons.pool2
tomcat
apache.sshd
lombok.log4j2
mybatis
netflix.archius
前端知识
瞬间
相册
朋友圈
留言板
友情链接
目 录
CONTENT
AQS与同步锁-沧海月明
以下是
AQS与同步锁
相关的文章
2024-10-23
Exchanger - 线程通信器
Exchanger是什么 Exchanger用于进行线程间的数据交换。它提供一个同步点,在这个同步点,两个线程可以交换彼此的数据。这两个线程通过exchange方法交换数据,如果第一个线程先执行exchange()方法,它会一直等待第二个线程也执行exchange方法,当两个线程都到达同步点时,这两
2024-10-23
70
0
0
AQS与同步锁
2024-10-23
CyclicBarrier - 同步屏障
含义 CyclicBarrier的字面意思是可循环使用(Cyclic)的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞
2024-10-23
57
0
0
AQS与同步锁
2024-10-23
Semaphore - 信号量
信号量是一种特殊的可重入锁,它给自己的state设置了一个余量,只有在有余量的情况下可以加锁。 源码分析 构造函数 public Semaphore(int permits) { sync = new NonfairSync(permits); } 在构造函数中传入一个许可证。sync是AQ
2024-10-23
59
0
0
AQS与同步锁
2024-10-23
ReentrantReadWriteLock - 读写锁
读写锁的特性 相比ReentrantLock,ReentrantReadWriteLock是一种粒度更细,读写分离的锁,更适合高并发但是读多写少的场景。 private final ReentrantReadWriteLock readWriteLock = new ReentrantReadWri
2024-10-23
75
0
0
AQS与同步锁
2024-10-23
CountDownLatch - 同步计数器
CountDownLatch的概念 CountDownLatch的作用很简单,就是一个或者一组线程在开始执行操作之前,必须要等到其他线程执行完才可以。例如等待学生考完收卷的老师。 源码分析 核心成员变量 private final Sync sync; 是一个基于AQS实现的同步器
2024-10-23
49
0
0
AQS与同步锁
2024-10-23
Condition
condition的概念和使用 condition用于实现线程之间的合作,执行Condition::awiat方法可以让某个线程进入condition等待状态,并等待其他线程释放Condition::signal信号。示例如下: public class ReentrantLockDemo {
2024-10-23
60
0
0
AQS与同步锁
2024-10-23
ReentrantLock
ReentrantLock的概念 ReentrantLock是一种基于AQS框架的应用实现,是JDK中的一种线程并发访问的同步手段,它的功能类似于synchronized是一种互斥锁,可以保证线程安全。相比synchronized,ReentrantLock具备以下特点: 可中断 可以设置超时时间
2024-10-23
67
0
0
AQS与同步锁
2024-10-23
AQS - 并发与锁
AQS概述 AQS(AbstractQueuedSynchronizer),所谓的AQS即是抽象的队列式的同步器,内部定义了很多锁相关的方法。AQS框架包括以下部分: countDownLatch:计数器 reentrantLock:锁 reentrantReadWriteLock:读写锁 cycl
2024-10-23
67
0
0
AQS与同步锁