首页
源码分析
Java并发框架源码
SpringBoot源码
Spring源码
MyBatis源码
文章
留言板
友链
1
1、红黑树的原理及实现(C++)
2
2、Java引用深入研究
3
1、I/O模型
4
14、ConcurrentHashMap核心源码解析
5
13、ThreadLocal线程局部变量
林雷
斜月沉沉藏海雾,碣石潇湘无限路
累计撰写
132
篇文章
累计创建
47
个标签
累计收到
3
条评论
栏目
首页
源码分析
Java并发框架源码
SpringBoot源码
Spring源码
MyBatis源码
文章
留言板
友链
搜索
标签搜索
RedBlackTree
红黑树
C++
Epoll
Poll
Select
NIO
阻塞队列
AQS
并发框架
码流
图灵
MyBatis源码
MyBatis
SpringBoot源码
Spring源码
JDK源码分析
线程池
XXL-JOB
Netty
ES
Elasticsearch
公共API
开放API
WebSocket
STOMP
VPN
Seata
分布式事务
HAProxy
ShardingSphere
Sharding-JDBC
Java8新特性
Nginx
Kubernetes
Redis
RocketMQ
OAuth2.0
Shadowsocks
SpringCloud
Linux
Git
docker
SpringSecurity
Spring
Java
技术
目 录
CONTENT
以下是
并发框架
相关的文章
2023-08-01
14、ConcurrentHashMap核心源码解析
一 ConcurrentHashMap核心源码解析本文使用的是1.8版本作为源码分析的。ConcurrentHashMap是HashMap的线程安全版本的实现,与HashMap类似,ConcurrentHashMap使用了一个table来存储Node,ConcurrentHashMap同样使用记录的
2023-08-01
151
0
2
Java并发框架源码
2023-07-29
13、ThreadLocal线程局部变量
一 ThreadLocal源码分析ThreadLocal可以理解为线程本地变量,它会在每个线程都创建一个副本,那么在线程之间访问内部副本变量就可以了,做到了线程之间互相隔离,相比于synchronized的做法是用空间来换时间。ThreadLocal有一个静态内部类ThreadLocalMap,Th
2023-07-29
150
0
0
Java并发框架源码
2023-05-28
12、时间轮算法和Netty的实现
一 时间轮时间轮方案将现实世界中的时钟概念引入到软件设计中,主要思路是定义一个时钟周期(比如时钟的12小时)和步长(比如时钟的一秒走一次),当指针每走一步的时候,会获取当前时钟刻度上挂载的任务并执行。所以说时间轮算法轮询不再遍历所有任务,而是遍历时间刻度。1.1 时间轮算法简介延迟队列的使用场景,时
2023-05-28
386
0
0
Java并发框架源码
2023-05-25
11、ScheduledThreadPoolExecutor源码解析
一 ScheduledThreadPoolExecutor源码解析在JDK中,定时器有多种实现,如Timer,Timer是单线程消费的,如果在执行任务期间某个TimerTask耗时过久,那么会影响其他任务的调度;ScheduledThreadPoolExecutor,线程池版本的定时器,内部实现上其
2023-05-25
203
0
0
Java并发框架源码
2023-05-22
10、关于设置线程池大小的思考
一 线程池大小线程池的理想大小取决于被提交任务的类型以及所部署系统的特性。在代码中通常不会固定线程池的大小,而应该通过某种配置机制来提供。要设置线程池的大小,应当避免“过大”和“过小”两种极端情况,如果线程池过大,那么大量的线程将在相对很少的CPU和内存资源上发生竞争,这不仅会导致更高的内存使用量,
2023-05-22
262
0
0
Java并发框架源码
2023-05-18
9、Executor及ThreadPoolExecutor线程池源码解析
一 Executor执行器Executor执行器,在Java中作为顶级的执行器接口,通常是作为一个异步执行器来执行指定的任务。在Executor接口中只定义了一个方法,用于执行指定的任务:/** * 执行器 */public interface Executor { /** * 执行给
2023-05-18
322
0
19
Java并发框架源码
2023-05-16
8、BlockingQueue之SynchronousQueue源码解析
一 SynchronousQueue源码解析通过 7、BlockingQueue之ArrayBlockingQueue源码解析 文章,我们知道阻塞队列的设计的基本思想,就是当读线程在读取数据的时候,如果队列存在元素则正常读取,当队列中没有数据的时候,则进入阻塞;而写线程也类似,当队列还有空间存放元素
2023-05-16
238
0
0
Java并发框架源码
2023-05-15
7、BlockingQueue之ArrayBlockingQueue源码解析
一 BlockingQueue队列,相对来说还是比较熟悉的,生活中随处可见。比如排队等公交、排队进入餐厅就餐等场景。BlockingQueue,阻塞队列,类似生活中的排队,只有第一个人走了,第二个人才会动,如果队首的人一直在等待,那么后面的人也一直需要等待。不同于普通的队列,阻塞队列保证了线程的安全
2023-05-15
169
0
0
Java并发框架源码
2023-05-09
6、读写锁ReentrantReadWriteLock源码解析
一 ReentrantReadWriteLock源码解析读写锁是计算机程序的并发控制的一种同步机制,也称为"共享-互斥锁"、多读-单写锁。读操作可并发重入,写操作是互斥的,这就表明多个线程可以同时读数据,但写数据只有一个独占的线程,当写数据时,其他写线程或者读线程要等待,直到这个
2023-05-09
115
0
2
Java并发框架源码
2023-05-08
5、Semaphore源码解析
一 Semaphore源码解析信号量又称为信号标,是一个同步对象,用于保持在0至指定的最大值之间的一个计数值。当线程完成一次对该semaphore对象的等待时,该计数值减一;当线程完成一次对semaphore对象的释放时,计数值加一。当计数值为0时,则线程等待该semaphore对象不再能成功直至该
2023-05-08
141
0
0
Java并发框架源码
1
2