阅读背景:

《java多线程编程核心技术》读书笔记2.2:volatile关键词

来源:互联网 
      在多线程的环境下,use和asign是多次出现的,但这一操作并不是原子性的,也就是在read和load之后,如果主存count变量发生修改之后,线程工作内存的值由于已经加载,不会产生对应的变化,也就是私有内存和公有内存中的变量不同步,所以计算出来的结果会和预期不一样,也就出现了非线程安全的问题。      在多线程的环境下,use和asign是多次出现的,但这一操作并不是原子性的,也就是在re


你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: