private static synchronized void syncInit() {
if (instance == null) {
instance = new GlobalConfig();
}
}
public static GlobalConfig getInstance() {
if (instance == null) {
syncInit();
}
return instance;
}
防止2个线程同时发现instance==null,然后同时调用了syncInit()的同步方法。
这样做,第二个进入syncInit的线程将发现那个对象已经不再是null了
避免被二次初始化。
这是单例模式的多线程必须注意的问题!