public class Test {
volatile boolean shutdownRequested;
public void shutdown() {
shutdownRequested=true;
}
public void doWork() {
//比如这里,每一次访问shutdownRequested都需要从主存中获取;而普通变量就有可能只在工作内存中获取
while(!shutdownRequested) {
//do stuff
}
}
}
java中volatile修饰的变量,是不是每一次访问都要访问主存,而普通变量不一定会
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-