相关的优秀文章链接: 01.可见性、原子性和有序性问题:并发编程bug的源头 02.Java内存模型:看Java如何解决可见性和有序性问题 03.互斥锁(上):解决原子性问题 04.互斥锁(下):如何用一把锁保护多个资源 05.一不小心就死锁了,怎么办 06.用“等待-通知”机制优化循环等待 07.安全性,活跃性以及性能问题 08.管程:并发编程的万能钥匙 09.Java线程(上):Java线程的生命周期 10.Java线程(中):创建多少线程才是合适的 11.Java线程(下):为什么局部变量是线程安全的? 12.如何用面对对象思想写好并发程序