concurrent包分层实现
最底层是volatile读/写和CAS;
第二层基础类是AQS、非阻塞数据结构和原子变量类;这些基础类使用类似的实现方式:
(1)声明共享变量(状态)为volatile类型;
(2)使用CAS原子更新完成线程之间的同步;
(3)利用volatile读/写的内存语义和CAS同时具备的volatile读和写的内存语义实现线程之间的通信。
第三层高层类是Lock、同步器、阻塞队列、Executor和并发容器。高层类基于第二层的基础类实现。
参考资料《Java并发编程的艺术》 机械工业出版社 方腾飞 魏鹏 程晓明
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)