JVM - Java内存模型 (JMM - Java Memory Model)
1. JMM是干嘛的?
作用: 是一个“缓存一致性协议”,用于定义数据读写的规则 :
JMM定义了线程工作内存和主内存之间的抽象关系:
- 线程之间的共享变量存储在主内存(Main Memory)中,
- 每个线程都有一一个私有的本地内存(Local Memory)
而在多线程环境下,可能会存在主内存和线程私有的本地内存不一致的问题。
因此,需要用volitale关键词来解决共享对象可见性的问题。
作用: 是一个“缓存一致性协议”,用于定义数据读写的规则 :
JMM定义了线程工作内存和主内存之间的抽象关系:
而在多线程环境下,可能会存在主内存和线程私有的本地内存不一致的问题。
因此,需要用volitale关键词来解决共享对象可见性的问题。