读书人

对于并发请高手指教一二

发布时间: 2011-12-04 22:58:58 作者: rapoo

关于并发,请高手指教一二
public class Singleton {
private static Singleton instance = null ;
private Singleton(){};

public static Singleton getInstance(){
if(instance!=null)
instance=new Singleton();
return instance;
}
}
如果有多人同时调用getInstance()方法,如何保证只创建一个Singleton对象,并且不牺牲效率?
java不支持双重检查吗?


[解决办法]
无论多少人调用getInstance()方法,都只创建一个Singleton对象,所以不存在你所说的保不保证的问题.
你看看这两行代码就知道:
if(instance!=null)
instance=new Singleton();
如果为NULL时,才去创建.

读书人网 >J2SE开发

热点推荐