文章分类
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
Java基础-沧海月明
以下是
Java基础
相关的文章
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与同步锁
2024-10-22
线程
线程与线程池的关系 线程是执行任务的最小单元,单个线程可以启停,从而执行任务。 线程是工厂中的工人, 工人可能自己有设计方法(自己写run方法),也可能使用图纸中的设计方法(任务中的run方法) 任务是工厂承接的设计任务,任务中包括图纸(run方法或call方法) 线程池是工厂,每过来一个任务,工厂
2024-10-22
74
0
0
线程与线程池
2024-10-21
内存模型JVM与并发
内存模型JVM与并发 并发的三个概念 原子性:一个或多个操作要么全操作要么全不操作,不可分割 可见性:是指当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值。 有序性:程序执行的顺序按照代码的先后顺序执行 JVM模型 在Java虚拟机规范中试图定义一种Java内存
2024-10-21
64
0
0
计算机原理
2024-10-21
CPU执行的原理
计算机整体构成 CPU、内存、IO设备之间通过总线进行数据传输。 CPU=控制器+运算器=数据寄存器(registers)+指令寄存器(pc)+运算器(alu)+缓存(cache) 指令寄存器从内存中取出指令,将对应地址中的数据存储在数据寄存器,交给alu运算,运算结果存储在内存。有的指令也可能自己
2024-10-21
86
0
0
计算机原理
1
2
3
4
5
6