单例模式大家并不陌生,也都知道它分为什么懒汉式、饿汉式之类的。但是你对单例模式的理解足够透彻吗?今天我带大家一起来看看我眼中的单例,可能会跟你的认识有所不同。很容易看出,上面这段代码在多线程的情况下是不安全的,当两个线程进入if (instance==null)时,两个线程都判断instance为空,接下来就会得到两个实例了。这不是我们想要的单例。接下来我们用加锁的方式来实现互斥,从而保证单例的实现。加上synchronized后确实保证了线程安全,但是这样就是最好的方法吗?很显然它不是,因为这样一来每次调用getInstance()