【发布时间】:2018-09-18 07:25:59
【问题描述】:
比尔·普格解决方案
public class ThreadSafeSerializedSafeSingleton implements Serializable {
private ThreadSafeSerializedSafeSingleton() {
}
private static class SingletonHelper {
private static final ThreadSafeSerializedSafeSingleton instance = new ThreadSafeSerializedSafeSingleton();
}
public static ThreadSafeSerializedSafeSingleton getInstance() {
return SingletonHelper.instance;
}
}
VS
延迟初始化的线程安全单例
public class ThreadSafeSingleton {
private static ThreadSafeSingleton instance;
private ThreadSafeSingleton() {
}
public static synchronized ThreadSafeSingleton getInstance() {
if (instance == null) {
instance = new ThreadSafeSingleton();
}
return instance;
}
}
【问题讨论】: