前言
为什么要读Spring源码,有的人为了学习Spring中的先进思想,也有的人是为了更好的理解设计模式,当然也有很大一部分小伙伴是为了应付面试,Spring Bean的生命周期啦,Spring AOP的原理啦,Spring IoC的原理啦,应付面试,看几篇博客,对照着看看源码,应该就没什么问题了,但是如果想真正的玩懂Spring,需要花的时间真的很多,需要你沉下心,从最基础的看起,今天我们就来看看Spring中的基础——BeanDefinition。
初识多线程
- 介绍进程
- 回到线程
- 进程与线程
- 并行与并发
- Javs实现多线程
- Java实现多线程需要注意的细节
Thread线程类API
设置线程名
守护线程
优先级线程
线程生命周期
使用多线程需要注意的问题
- 线程安全问题
- 性能问题
- 安全发布对象
- 简述解决线程安全性的办法
- 原子性和可见性
- 线程封闭
- 不变性
- 线程安全性委托
synchronized锁和lock锁
- synchronized锁
- Lock显式锁
- Java锁简单总结
AQS
- AQS是什么?
- 同步状态
- 先进先出队列
- sacquire方法
- release方法
ReentrantLock
- 内部类
- 构造方法
- 非公平lock方法
- 公平lock方法
- unlock方法
ReentrantReadWriteLock
- ReentrantReadWriteLock内部类
- 读锁和写锁的状态表示
- 写锁的获取
- 读锁获职
线程池
- 线程池简介
- JDK提供的线程池API
- ForkJoinPool线程池
- Callable和Future
- ThreadPoolExecutor详解
- execute执行方法
- 线程池关闭
死锁
- 锁顺序死锁
- 动态锁顺序死锁
- 协作对象之间发生死锁
- 固定锁顺序避免死锁
- 开放调用避免死锁
- 使用定时锁
- 死锁检测
线程常用的工具类
- CountDownLatch
- CyclicBarrier
- Semaphore
Atomic
- 基础铺垫
- CAS失败重试(自旋)
- 原子变量类简单介绍
- LongAdder、AtomicLong性能对比
ThreadLocal
- 什么是ThreadLocal
- 为什么要学习ThreadLocal?
- ThreadLocal底层原理总结
- 避免内存泄露
最后
这份文档从构建一个键值数据库的关键架构入手,不仅带你建立起全局观,还帮你迅速抓住核心主线。除此之外,还会具体讲解数据结构、线程模型、网络框架、持久化、主从同步和切片集群等,帮你搞懂底层原理。相信这对于所有层次的Redis使用者都是一份非常完美的教程了。
快速入手通道:(戳这里,免费下载)诚意满满!!!
整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~
你的支持,我的动力;祝各位前程似锦,offer不断!!!
入手通道:(戳这里,免费下载)诚意满满!!!**
整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~
你的支持,我的动力;祝各位前程似锦,offer不断!!!