juc学习

对volatile变量的操作可以认为是直接对主存进行操作。 volatile不保证互斥性、原子性。 线程有个自己的内存块。 i=i++;理解为 int temp = i; i = i+1; i=temp; 结果是不变的。 原子变量保存的值是volatile的,CAS算法保证原子性,有个预估值和内存值,预估值和内存值相同时才会将数据写入。 ……