美文网首页
java内存模型理解

java内存模型理解

作者: silhouette_4503 | 来源:发表于2019-07-31 15:11 被阅读0次

java内存模型理解

JVM 内存结构:堆、栈、方法区等等。。

原子性:对基本数据类型的变量和赋值操作才是原子性的。可以通过锁、synchronized来确保 原子性

可见性:指当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看到修改的值。

有序性:程序执行的顺序按照代码的先后顺序执行。

java的内存模型是关于多线程的。共享内存模型指的就是java内存模型简称JMM,JMM决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每一个线程都有一个私有的本定内存(local memory),本地内存中存储了该线程以读/写共享变量的副本。

什么是java内存模型:java内存模型简称JMM,定义了一个线程对另一个线程可见,共享变量存放在主内存中,每个线程都有自己的本地内存,当多个线程同时访问同一个数据的时候,可能本地内存没有及时刷新到主内存,所以就会发生线程安全问题。

相关文章

  • 九、Java内存模型与线程

    一、Java内存模型 1.概念   Java内存模型可以理解为Java内存访问模型。主要目标是定义程序中各个变量的...

  • Java 内存模型

    Java 内存模型由于 ConcurrentHashMap 是建立在 Java 内存模型基础上的,为了更好的理解 ...

  • volatile详解

    Java内存模型 想要理解 volatile 为什么能确保可见性,就要先理解Java中的内存模型是什么 样的。 J...

  • 并发编程有关知识点(五)

    Java 内存模型 java线程安全总结 深入理解java内存模型系列文章 线程状态: 一张图让你看懂JAVA线程...

  • volatile变量

    上篇文章介绍了Java内存模型,没看过《深入理解Java虚拟机》的同学可以去看下Java内存模型 ...

  • volatile

    一、Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。 Ja...

  • volatile关键字

    一、Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。 Ja...

  • Java/转载

    final关键字的性能影响 Java对象内存结构 全面理解Java内存模型 从Java视角理解CPU缓存和伪共享

  • (转载)全面理解Java内存模型(JMM)及volatile关键

    原文链接:全面理解Java内存模型(JMM)及volatile关键字 - CSDN博客 理解Java内存区域与Ja...

  • 《深入理解 Java 虚拟机》学习 -- Java 内存模型

    《深入理解 Java 虚拟机》学习 -- Java 内存模型 1. 区别 这里要和 JVM 内存模型区分开来: J...

网友评论

      本文标题:java内存模型理解

      本文链接:https://www.haomeiwen.com/subject/udhtdctx.html