zoukankan      html  css  js  c++  java
  • volatile的一点理解

    对于volatile的理解,我想通过代码来表达。

    public class VolatileExample {

    private volatile long data;

     

    public void setData(long newData){

    data = newData;//对于volatile变量的写

    }

     

    public long getData(){

    return data;//对于volatile变量的读

    }

     

    public void increseData(){

    data++;//对于volatile变量的复合操作

    }

    }

     

    等价于下面这个类:

    public class VolatileExampleNew {

    private volatile long data;

     

    public synchronized void setData(long newData){

    data = newData;//对于volatile变量的写

    }

     

    public synchronized long getData(){

    return data;//对于volatile变量的读

    }

     

    public void increseData(){

    long temp = getData();

    temp+=1l;

    setData(temp);

    }

    }

  • 相关阅读:
    计算机是如何启动的
    比特币
    区块链技术
    哈夫曼树与哈夫曼编码
    Prim Algoritm(最小生成树)
    机器学习概述总览
    线性查找算法(BFPRT)
    DFS(深度优先搜索)
    BFS(广度优先搜索)
    (Dijkstra)迪杰斯特拉算法-最短路径算法
  • 原文地址:https://www.cnblogs.com/jw93/p/6541786.html
Copyright © 2011-2022 走看看