读java concurrency in practice
这是一本好书(Java源码作者Doug Lea是作者之一),关于Java并发的各个方面,介绍的很深入,应该算是进阶一类,很多地方不好理解。一开始打算阅读英文版,倒不是英文看不懂,不过还是有很多内容的确理解起来很费劲,尤其是老外写书的风格(废话特别多 = = 一页密密麻麻的英文,让人找不到关键点在哪儿),看几页就没兴趣再看下去哎…后有幸找到了中文翻译版,而且翻译的很有水准,拜谢翻译工作者韩锴和方妙。
找不到翻译版的同学,可以私信我提供。
可以说,自己对Java真正的并发同步的理解还处于入门阶段,看了一遍书很多地方估计还是没有get到的,不过已经学到不少了。这本书值得以后再细细研读。
- 可重入的概念、可重入锁和java.util.concurrent.locks.ReentrantLock。
详见:可重入锁、ReentrantLock、AQS、Condition
- 基于AQS的各种同步工具类
有ReentrantLock、ReentrantReadWriteLock、CountDownLatch、Semaphore、FutureTask、CyclicBarrier等
详见:ReentrantReadWriteLock简单分析 CountDownLatch简单分析 Semaphore简单分析 FutureTask简单分析和用法
- reordering重排序、happened-before关系、volatile真正语义
- 基于硬件的原子CAS算法
- 内置synchronized锁、基于CAS算法的锁、CAS原子类、volatile修饰的性能相关
- org.apache.http.annotation包下有一些有用的Annotation,比如ThreadSafe、NotThreadSafe等