Java教程

Java内存模型

本文主要是介绍Java内存模型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
  • 《Java并发编程的艺术》第3章的标题《Java内存模型》,初一看自己还以为讲解的JVM的内存模型(堆、栈、方法区等)
  • 真正学习时,发现这一章的内容组织对自己来说比较难理解,学得迷迷糊糊的
  • 查看了一些资料,起码比不看的效果更好:
    • 自己之前的博客:Java高并发之JMM(java内存模型、volatile变量、JMM的三大特性)
    • 短小精悍的Java学习笔记:Java并发 —— 十、Java 内存模型
  • 发现《Java并发编程的艺术》第3章,就是在详细介绍Java并发编程的三大特性中的两个特性:可见性、有序性
  • 可见性
    • 可见性指当一个线程修改了共享变量的值,其它线程能够立即得知这个修改。
    • Java 内存模型(简写JMM)是通过在变量修改后将新值同步回主内存,在变量读取前从主内存刷新变量值来实现可见性的
    • 可见性的三种主要实现方式:volatile、 synchronized、final
    • 主要有三种实现可见性的方式:
  • 有序性
    • JMM中,为了提高程序的执行性能,允许编译器和处理器对指令序列重新进行排序
    • 这使得,本线程内观察,所有操作都是有序的;在其他线程观察当前线程,所有操作是无序的
    • 不太理解
这篇关于Java内存模型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!