Java--单例模式(双重锁的形式)

public class SingleTon {
	private static SingleTon instance = null;
	private SingleTon(){
		//do something
	}
	public static SingleTon getInstance(){
		if(instance==null){
			synchronized(SingleTon.class){
				if(null == instance){
					instance = new SingleTon();
				}
			}
		}
		return instance;
	}
}


这个模式将同步内容下方到if内部,提高了执行的效率,不必每次获取对象时都进行同步,只有第一次才同步,创建了以后就没必要了。

你可能感兴趣的:(java,单例模式,同步,双重锁)