前言
volatile是Java程序员必备的基础,也是面试官非常喜欢问的一个话题,本文跟大家一起开启vlatile学习之旅,如果有不正确的地方,也麻烦大家指出哈,一起相互学习~
- 1.volatile的用法
- 2.vlatile变量的作用
- 3.现代计算机的内存模型(计算机模型,总线,MESI协议,嗅探技术)
- 4.Java内存模型(JMM)
- 5.并发编程的3个特性(原子性、可见性、有序性、happen-before、as-if-serial、指令重排)
- 6.volatile的底层原理(如何保证可见性,如何保证指令重排,内存屏障)
- 7.volatile的典型场景(状态标志,DCL单例模式)
- 8.volatile常见面试题&&答案解析
并发编程共享模型篇
- 并发编程概览
- 进程与线程
- Java线程
- 共享模型之管程
- 共享模型之内存
- 共享模型之无锁
- 共享模型之不可变
- 共享模型之工具
共享模型之管程
原理之 Monitor(锁)
原理之伪共享
模式篇—正确姿势
- 同步模式之保护性智停
- 同步模式之Blking
- 同步模式之顺
- 序控制
- 异步模式之生产者消费者
- 异步模式之工作线程.
- 终止模式之两阶段终止模式
- 线程安全单例
- 享元模式
同步模式之保护性暂停
应用篇—结合实际
- 效率
- 限制
- 互斥
- 同步和异步
- 缓存
- 分治
- 统筹
- 定时
缓存更新策略
原理篇—了然于胸
- 指令级并行原理
- CPU缓存结构原理
- volatile原理
- fnal原理
- Monitor原理
- synchronized原理
- synchronized原理进阶
- wait notify原理
- join原理
- park unpark原理
- AQS原理
- ReentrantLock原理
- 读写锁原理
- Semaphore原理
- CourentHashMap,原理
- LnkedlockingQueue原理
- ConcurenL nkedQueue原理
指令级并行原理
CPU 缓存结构原理
CPU 缓存一致性
《一线大厂Java面试真题解析+Java核心总结学习笔记+最新全套讲解视频+实战项目源码》开源
Java开发优秀开源项目:
-
ali1024.coding.net/public/P7/Java/git
- github.com/spring-projects