单例模式之双锁机制

来源:互联网 发布:sql分组求和 编辑:程序博客网 时间:2024/05/29 09:12
//单例模式(双锁机制)
         1.创建一个单例类
         2.创建一个加锁的静态单例对象
         3.创建一个无参的构造函数
         4.创建一个静态的方法返回值为单例对象,判断对象是否为空如果为空则再加同步锁,把对象锁住,然后再次判空,如果为空则创建实例,然后返回实例

        
         public class Singleton{
         //先加一把锁
        public volatile static Singleton singleton;
        //无参构造
         public Singleton{

         }

        public static Singleton getInstance(){
       if(null==singleton){
        //同步锁
        synchronized(Singleton.class){
       if(null==singleton){

       singleton=new Singleton();

        }

       }
       }
      return singleton;
      }
}
0 0
原创粉丝点击