摘要: 1 双重检查锁定及其存在的问题在单例模式中,普通的单例模式是线程不安全的,如下://懒汉式,线程不安全public static class SingleTon2 { public static Singl... 阅读全文
posted @ 2019-01-26 22:38 白晨冬阳 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 一、final域的内存语义1 final域的重排序规则对于final域,编译器和处理器要遵守两个重排序规则:1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间... 阅读全文
posted @ 2019-01-26 22:37 白晨冬阳 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 1.volatile的内存语义1.1 volatile的特性可以把对volatile变量的单个读/写,看成是使用同一个锁对这些单个读/写操作做了同步。如下面的例子:class VolatileFeaturesEx... 阅读全文
posted @ 2019-01-26 22:34 白晨冬阳 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1 Java内存模型的基础1.1 并发编程模型的两个关键问题在并发编程中,需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令... 阅读全文
posted @ 2019-01-26 22:27 白晨冬阳 阅读(189) 评论(0) 推荐(0) 编辑