读书人

一个单例模式挑动的丢失一个offer的血

发布时间: 2013-10-27 15:21:49 作者: rapoo

一个单例模式引发的丢失一个offer的血案

今天下午去面试,二面面了有一个半小时,最后面试官说,你写个代码吧,你一定要注意各种语法啊,考虑效率啊,blabla...你写个单例模式吧。

然后我就开始写了。。。

然后写了下面的代码给面试官,然后说,多线程加锁的代码忘了具体是什么了。。。

static Singleton* instance() {

public class Singleton {    private static Singleton single;    //声明静态的单例对象的变量    private Singleton() {}   //私有构造方法    public static Singleton getSingle() {   //外部通过此方法可以获取对象        if (single == null) {            synchronized (Singleton.class) {   //保证了同一时间只能只能有一个对象访问此同步块                if (single == null) {                    single = new Singleton();                }            }        }        return single;   //返回创建好的对象    }}

这些代码都是双检锁 Double-checked locking pattern




读书人网 >编程

热点推荐