• Volatile的重排序


    Volatile的重排序

    1、当第二个操作为volatile写操做时,不管第一个操作是什么(普通读写或者volatile读写),都不能进行重排序。这个规则确保volatile写之前的所有操作都不会被重排序到volatile之后;

    2、当第一个操作为volatile读操作时,不管第二个操作是什么,都不能进行重排序。这个规则确保volatile读之后的所有操作都不会被重排序到volatile之前;

    3、当第一个操作是volatile写操作时,第二个操作是volatile读操作,不能进行重排序。

    这个规则和前面两个规则一起构成了:两个volatile变量操作不能够进行重排序;

    除以上三种情况以外可以进行重排序。

    比如:

    1、第一个操作是普通变量读/写,第二个是volatile变量的读;
    2、第一个操作是volatile变量的写,第二个是普通变量的读/写;
    ————————————————
    版权声明:本文为CSDN博主「qinjianhuang」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/sinat_35512245/article/details/60325685

    如果有来生,要做一片树叶。 春天恋上枝,炎夏恋上水。 深秋恋上土,东来化作泥。 润物细无声,生生世世恋红尘。
  • 相关阅读:
    “5W1H”带你来学习JavaScript
    [windows+cocos2dx]文本类
    server后台TCP连接存活问题
    (七):处理MFC
    Servlet中的request对象、重定向和转发的差别(6)
    ORACLE 存储函数
    【@伏草惟存@】7年系列博文精选
    笔记14:Docker 部署Python项目
    笔记13:Python 和 Elasticsearch 构建简易搜索
    笔试12:Bootstrap知识
  • 原文地址:https://www.cnblogs.com/shujiying/p/12362436.html
Copyright © 2020-2023  润新知