public class Instance{
private static volatile Instance instance;
private static CountDownLatch cd=new CountDownLatch(1);
private static AtomicBoolean ab=new AtomicBoolean(true);
private Instance(){
}
public static Instance getInstance(){
if(ab.getAndSet(false)){
instance=new Instance();
cd.countDown();
return instance;
}
else{
try{
cd.await();
}
catch(Exception e){
}
return instance;
}
}
}
一种单例写法
最新推荐文章于 2024-10-12 17:55:45 发布