线程安全的单例模式是否真的安全
上次我们谈了一些关于JAVA中锁级别的问题,这一次和大家聊一聊JAVA中常见的单例模式,并且指出常见的线程安全的单例模式所存在的一些问题,并对问题给出部分解答。
首先,单例模式是我们常用和常见的经典设计模式之一,但是由于在JAVA中,多线程问题往往会引起单例模式的水土不服,所以,我们就见到了线程安全的单例模式,首先一种单例模式如下所示:
public class SafeInitialization{
private static Instance instance;
public synchronized static Instance getInstance(){
if(instance == null){
instance = new Instance();
}
return instance;
}
}