我在静态工厂方法中编写了以下代码以返回 DefaultCache 的单个实例。
public static ICache getInstance() {
if (cacheInstance == null) {
synchronized (ICache.class) {
if (cacheInstance == null) {
cacheInstance = new DefaultCache();
}
}
}
return cacheInstance;
}
我们真的需要在同步块中对cacheInstance进行第二次空检查吗?