摘要:
在理解volotile关键字的作用之前,先粗略解释下内存可见性与指令重排序。 1. 内存可见性 Java内存模型规定,对于多个线程共享的变量,存储在主内存当中,每个线程都有自己独立的工作内存,并且线程只能访问自己的工作内存,不可以访问其它线程的工作内存。工作内存中保存了主内存中共享变量的副本,线程要 阅读全文
posted @ 2017-06-23 22:22
@ 小浩
阅读(531)
评论(0)
推荐(0)
摘要:
Java中long赋值不是原子操作,因为先写32位,再写后32位,分两步操作,而AtomicLong赋值是原子操作,为什么?为什么volatile能替代简单的锁,却不能保证原子性?这里面涉及volatile,是java中的一个我觉得这个词在Java规范中从未被解释清楚的神奇关键词,在Sun的JDK官 阅读全文
posted @ 2017-06-23 20:55
@ 小浩
阅读(802)
评论(0)
推荐(0)
浙公网安备 33010602011771号