设计模式之单例的懒汉式

										## 设计模式之单例的懒汉式
package cn.qqjx.design;

/**
 * lazy loading
 * 也称懒汉式
 * 虽然达到了按需初始化的目的,但却带来线程不安全的问题
 */
public class Mgr03 {
    
    

    private static Mgr03 INSTANCE;

    private Mgr03() {
    
    
    }

    public static Mgr03 getInstance() {
    
    
        if (INSTANCE == null) {
    
    
            try {
    
    
                Thread.sleep(1);
            } catch (InterruptedException e) {
    
    
                e.printStackTrace();
            }
            INSTANCE = new Mgr03();
        }
        return INSTANCE;
    }

    public void m() {
    
    
        System.out.println("m");
    }

    public static void main(String[] args) {
    
    
        for(int i=0; i<10; i++) {
    
    
            new Thread(()->
                    System.out.println(Mgr03.getInstance().hashCode())
            ).start();
        }
    }
}
1924898670
103512977
1184893857
449584288
967740059
219573733
585605895
556880187
845277851
1811721094

猜你喜欢

转载自blog.csdn.net/m0_52936310/article/details/112345142