Java并发BUG提升篇
书接上文:Java并发BUG基础篇
内存一致性问题
当多个线程访问为相同数据的结果不一致时,将发生内存一致性问题。
根据Java内存模型,除主内存(RAM)外,每个CPU都有自己的缓存。因此,任何线程都可以缓存变量,因为与主内存相比,它提供了更快的访问速度。
问题
让我们回想一下我们的Counter示例:
class Counter {
private int counter = 0;
public void increment() {
counter++;
...