多线程系列(九)------ volatile相关 TODO

一、简介

二、基础原理

三、对单例的支持

3.1 例子

/**
 * @author qjwyss
 * @date 2019/4/11
 * @description
 */
public class Single {

    private volatile static Single instance;

    private Single() {
    }

    public Single getInstance() {

        if (null == instance) {
            synchronized (Single.class) {
                if (null == instance) {
                    instance = new Single();
                }
            }
        }
        return instance;
    }

}

3.2 分析

多线程系列(九)------ volatile相关 TODO

四、多线程系列链接

  1. 多线程系列(一)------ 线程的状态及转换
  2. 多线程系列(二)------ 线程的创建方式
  3. 多线程系列(三)------ 线程常用方法
  4. 多线程系列(四)------ 线程优先级和守护线程和终止线程的方式
  5. 多线程系列(五)------ 死锁案例以及检测方法

  6. 多线程系列(六)------ 生产者消费者案例

  7. 多线程系列(七)------ synchronized关键字简单使用以及可重入性 
  8. 多线程系列(八)------ synchronized关键字原理以及锁优化
  9. 多线程系列(九)------ volatile相关TODO
  10. ThreadLocal相关
  11. 锁LOCK相关系列
  12. 原子类相关系列
  13. 并发集合相关系列
  14. 线程池相关系列