单例模式 双重锁定单例模式并不是推荐的实现方式,但是通过讨论,可以进一步理解JVM的内存模型 synchronized的作用:通过happens-before, 保证同一个monitor的加锁,在解锁之后执行,但是 synchronized块内部,仍然可以重排序。 通过volitile关键字,可以禁止volitile变量指令的重排序。可以通过volitile来禁止synchronized块内部的变量的重排序 TODO 完善和讨论