jmm和jvm的区别
时间: 2024-06-20 14:03:50 浏览: 10
JVM是Java虚拟机的缩写,是Java程序的运行环境。它负责将Java源代码编译成字节码,然后在运行时将字节码转换成机器码执行。而JMM则是Java内存模型的缩写,是Java程序中控制多线程并发访问的一种机制。
JVM和JMM之间的区别在于它们所控制的内容不同。JVM主要控制Java程序的执行环境和内存分配等方面,而JMM则控制Java程序中多线程并发访问时的内存可见性、操作顺序等问题。简单来说,JVM负责程序的执行,而JMM负责程序中多线程并发访问时的内存同步。
相关问题
JMM 和 JVM 区别
JMM(Java Memory Model)是一种规范,它定义了Java虚拟机如何与计算机内存交互,以及多线程程序如何访问共享内存。而JVM(Java Virtual Machine)是Java虚拟机的缩写,它是一种能够运行Java字节码的虚拟机。简单来说,JMM是规范,JVM是实现。
jvm内存模型和jmm
JVM内存模型是Java虚拟机规定的一种用于管理内存的规范,包括了线程私有的程序计数器、虚拟机栈、本地方法栈和线程共享的堆内存以及方法区(包括运行时常量池)。JVM内存模型保证了多线程程序在访问共享变量时的可见性、有序性和原子性。
JMM(Java内存模型)是Java语言规范中定义的一种规范,它描述了Java虚拟机如何提供内存的可见性、有序性和原子性保证,以及Java程序中各种操作之间的先后关系。JMM定义了一套规则,保证了Java程序在不同的平台和不同的JVM实现上都能够获得相同的内存行为。
JMM是JVM内存模型的一部分,它是由Java语言规范定义的,而JVM内存模型是由Java虚拟机规范定义的。JMM规范定义了Java程序对内存的访问和操作的规则,而JVM内存模型则描述了Java虚拟机如何实现这些规则。简单来说,JMM规范定义了Java程序如何使用内存,而JVM内存模型定义了Java虚拟机如何管理内存。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![xmind](https://img-home.csdnimg.cn/images/20210720083646.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)