1. 程式人生 > 其它 >【設計模式】單例模式(懶漢式)==>導致執行緒不安全驗證

【設計模式】單例模式(懶漢式)==>導致執行緒不安全驗證

public class MyBenchmark {
	public static void main(String[] args) {
		new Thread(()-> {
			Singleton instance1 = Singleton.getInstance();
		},"t1").start();
		
		new Thread(()-> {
			Singleton instance2 = Singleton.getInstance();
		},"t2").start();
	}
}
@Slf4j(topic = "c.Singleton"
) class Singleton { private static Singleton instance; private Singleton() {} public static Singleton getInstance() { if(instance == null) { instance = new Singleton(); log.debug("已建立"); //若是單執行緒,則永遠只會輸出1次。多執行緒,則可能會輸出多次 } return instance; } }

在這裡插入圖片描述
在這裡插入圖片描述