Java内存模型
2016-12-20 10:04:31 0 举报
Java内存模型(JMM)是Java虚拟机规范中的一个概念,它定义了Java程序在多线程环境下如何和何时可以看到其他线程写入的值,以及如何同步访问共享变量。JMM的主要目标是为开发人员提供一个稳定的环境来编写多线程代码。为了实现这一目标,JMM规定了线程与主内存之间的交互规则,包括可见性、原子性和有序性。这些规则确保了Java程序在各种硬件和操作系统上都能正确地执行。总之,Java内存模型为Java程序员提供了一个统一的框架,使他们能够更好地理解和编写多线程代码。
作者其他创作
大纲/内容
线程共享的
程序计数器:
堆区:
本地方法栈:
方法区:
两种异常:1.stackOverFlow 线程调用的栈深度大于虚拟机允许的2.outOfMemory 内存不足
方法区是各个线程共享的区域,用于存储已经被虚拟机加载的类信息(Class的信息)、final常量、静态变量、编译器及时编译的代码等
本地方法栈
堆区也是GC机制所管理的主要内存区域,堆区由所有线程共享,堆区存储对象实例
线程私有的
Java运行时内存(JVM管理的内存)
类似于CPU中的PC寄存器,保存当前线程执行的虚拟机字节码指令的地址
虚拟机栈:
程序计数器
可以理解为线程中的方法栈,线程中每个方法执行的时候,都会创建一个栈帧。
虚拟机栈
方法区
堆区
0 条评论
下一页