并发编程目录(基于JDK 8)
- 《深入理解Java虚拟机》
- 《JAVA并发编程实践(Doug Lea)》
- 《Java并发编程的艺术》
JAVA 线程基础
JAVA 内存模型(并发底层原理)
从Java视角理解系统结构(一)CPU上下文切换
从Java视角理解系统结构(二)CPU缓存
从Java视角理解系统结构(三)伪共享
Java内存模型FAQ
Java内存模型FAQ(一) 什么是内存模型
Java内存模型FAQ(二) 其他语言,像C++,也有内存模型吗?
Java内存模型FAQ(三)JSR133是什么?
Java内存模型FAQ(四)重排序意味着什么?
Java内存模型FAQ(五)旧的内存模型有什么问题?
Java内存模型FAQ(六)没有正确同步的含义是什么?
Java内存模型FAQ(七)同步会干些什么呢
Java内存模型FAQ(八)Final字段如何改变它们的值
Java内存模型FAQ(九)在新的Java内存模型中,final字段是如何工作的
Java内存模型FAQ(十)volatile是干什么用的
Java内存模型FAQ(十一)新的内存模型是否修复了双重锁检查问题?
Java内存模型FAQ(十二)如果我需要写一个VM,我需要做些什么
Java内存模型FAQ(十三)为什么我需要关注java内存模型
同步和Java内存模型 (二)原子性
同步和Java内存模型 (三)可见性
同步和Java内存模型(五)Volatile
多线程之:偏向锁,轻量级锁,重量级锁 https://www.cnblogs.com/shangxiaofei/p/5569879.html
https://blog.csdn.net/kirito_j/article/details/79201213
Disruptor 并发框架
[Disruptor 官方文档中文翻译]http://ifeve.com/disruptor/
Disruptor 伪共享(01)
[Disruptor 伪共享(02)]http://ifeve.com/false-shareing-java-7-cn/
[Disruptor 伪共享]https://www.cnblogs.com/Binhua-Liu/p/5620339.html
必读篇
JUC源码分析—CAS 和 Unsafe
锁篇
JUC源码分析-JUC锁(一)AQS
JUC源码分析-JUC锁(二)ReetrantLock
JUC源码分析-JUC锁(三)ReentrantReadWriteLock
JUC源码分析-JUC锁(四)StampedLock(http://www.importnew.com/14941.html)
(https://blog.overops.com/java-8-stampedlocks-vs-readwritelocks-and-synchronized/)
JUC源码分析-JUC锁(五)CountDownLatch、CyclicBarrier、Semaphore
JUC源码分析-JUC锁(六)Phaser
集合篇
JUC源码分析-集合篇:集合框架
JUC源码分析-集合篇(一)ConcurrentHashMap
[JUC源码分析-集合篇(二)ConcurrentNavigableMap]
JUC源码分析-集合篇(三)ConcurrentLinkedQueue 和 ConcurrentLinkedDeque
JUC源码分析-集合篇(四)CopyOnWriteArrayList 和 CopyOnWriteArraySet
[JUC源码分析-集合篇(五)ArrayBlockingDeque]
JUC源码分析-集合篇(六)LinkedBlockingQueue 和 LinkedBlockingDeque
JUC源码分析-集合篇(七)PriorityBlockingQueue
JUC源码分析-集合篇(八)DelayQueue
JUC源码分析-集合篇(九)SynchronousQueue
JUC源码分析-集合篇(十)LinkedTransferQueue
线程池篇
JUC源码分析-线程池篇:线程池框架
[JUC源码分析-线程池篇(一):Executor & ExecutorService]
JUC源码分析-线程池篇(一):ThreadPoolExecutor
JUC源码分析-线程池篇(三):Future & Callable & FutureTask
[JUC源码分析-线程池篇(四):Executors 框架]
[JUC源码分析-线程池篇(五):CompletionService]
JUC源码分析-线程池篇(六):ScheduledThreadPoolExecutor
[JUC源码分析-线程池篇(七):ForkJoinPool]
每天用心记录一点点。内容也许不重要,但习惯很重要!