java并发文章汇总篇,从原理到应用层梳理。
概念篇
-
- 什么是并发编程
- 并发编程有哪些挑战
- 怎么解决这些挑战
-
- 并发编程核心问题(线程间的通信与同步)
- 主要涉及到三个点
- 原子性
- 有序性
- 内存可见性。
- java采用的解决方案(共享内存,另外一种方式是消息传递)
-
- 对上面java通过
共享内存方式,进行的补充(解决思想) - 主要是介绍了什么是JMM,JMM又是为什么能够解决并发带来的问题
- 对上面java通过
-
- java并发体系是由哪些构建起来的
原理篇
聊聊java并发编程[synchronized vs volatile]
- 介绍synchronized和volatile 是如何解决
原子性,有序性,内存可见性。 - synchronized 和volatile关键字的原理
- 介绍synchronized和volatile 是如何解决
-
- JUC核心部分,锁,同步队列,都是基于此
- 这篇文章介绍了什么是AQS, AQS的原理,独占式以及共享式状态如何获取与释放
-
- 介绍了JUC中的原子类为什么是线程安全的以及其原理
-
- 介绍了常见的锁,以及部分锁的实现
-
- 介绍了java并发Condition的原理以及源码剖析
- 等待/通知模型的一种实现
应用篇
聊聊java并发编程[HashMap && ConcurrenctHashMap]
- 源码分析了jdk8的中的HashMap与ConcurrentHashMap的实现原理
-
- 源码分析了Executor的架构,核心源码剖析
….持续更新中