【JVM调优(一)】----JAVA内存模型抽象结构

    线程之间的通信机制有两种:共享内存和消息传递。
    Java线程之间的通信由Java内存模型(JMM)控制,JMM控制一个线程对共享变量的写入什么时候对另一个线程可见。下图是JMM的抽象结构:

【JVM调优(一)】----JAVA内存模型抽象结构

    线程之间的共享变量存储在主内存中(Main Memory),每一个线程都有自己的本地内存(Local Memory),本地内存中存储着读/写共享变量的副本。

    由上图可以看出,线程之间的通信由两个步骤:

线程A把修改后的本地内存中的共享变量更新到主内存中去
线程B到主内存中读取线程A之前更新过的共享变量

【JVM调优(一)】----JAVA内存模型抽象结构

    从整体上看,这就是线程A在向线程B发送消息,而且这个消息必须经过主内存。JMM通过控制主内存与每个线程的本地内存之间的交互,来为Java程序员提供内存可见性保证。

上一篇:CSDN社区分享面试经历活动作品27——java程序员求职总结


下一篇:CSDN社区分享面试经历活动作品22——步入实习道路的第二次面试