volatile的一点理解
Posted 蒋旺93
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);
}
}
以上是关于volatile的一点理解的主要内容,如果未能解决你的问题,请参考以下文章
Java编程volatile和transient关键字的理解