volatile问题
来源:9-5 jmm的内存可见性
慕UI3469488
2019-05-15
第二句话:当什么东西读取一个volatile变量时? JMM会把该线程对应的工作内存置为无效又是什么意思?
写回答
1回答
-
当线程读取volatile变量时。在视频里也说到了,在线程里面会有自己的工作内存,工作内存和主内存交互,也就是说线程间共享主内存,将主内存的数据拷贝到自己的工作内存,修改的时候是修改的工作内存。将工作内存置为无效就是让自己的工作内存过期,转而直接读取主内存的数据,这样就能获取到最新的数据。具体可以看看这个
https://www.jianshu.com/p/157279e6efdb
10
相似问题