单例模式

//使用双重锁方式解决多线程下的单例模式实现
public  class Singleton
    {

        private static Singleton uniqueInstance;
        private static object _lock = new object();

        private Singleton() { }
        public static  Singleton getInstance() 
        {
           if (null == uniqueInstance)//确认要实例化后再进行加锁,降低加锁的性能消耗。
           {
               lock (_lock)
               {
                   if (null == uniqueInstance) 
                   {
                       uniqueInstance = new Singleton();
                   }
               }      
           }
           return uniqueInstance;
        }

    }

  参考:http://www.cnblogs.com/4mylife/archive/2012/08/29/2662902.html#undefined

posted @ 2014-10-27 14:51  慧由心生  阅读(274)  评论(0)    收藏  举报