自动内存管理机制(1)——运行时数据区域
来源:互联网 发布:uc怎么绑定淘宝账号 编辑:程序博客网 时间:2024/05/29 00:31
Java程序设计语言、虚拟机、API类库——>JDK
API 类库中SEAPI子集和虚拟机——>JRE
1.程序计数器:当前线程执行的字节码的行号指示器。针对java方法,如果是Native方法,计数器值为空。
唯一一个没规定OutOfMemoryError的区域。
2.java虚拟机栈:java方法执行的内存模型,方法执行同时创建一个栈帧,用于存储局部变量表、操作数栈、动态链接、方法出口灯信息。经常意义上说的“栈内存”指虚拟机栈中的局部变量表。局部变量表存放了编译期可知的各种基本数据类型、对象引用类型。
会抛出StackOverflowError异常(请求栈深度大于所允许的深度);OutOfMemoryError异常(可动态扩展时无法申请到足够内存)。
3.本地方法栈:使用Native方法服务。虚拟机栈执行Java方法(字节码)服务。
会抛出StackOverflowError异常和OutOfMemoryError异常。
4.java堆:虚拟机启动时创建,存放对象实例,几乎所有对象实例在这里分配内存,可用于物理内存不连续逻辑连续的内存空间。是垃圾收集器管理的主要区域,也称为GC堆。
会抛出OutOfMemoryError异常。
5.方法区:存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等。这区域的回收目标主要是针对常量池的和对类型的卸载。
*运行时常量池:方法区的一部分,用于存放编译期生成的各种字面量和符号引用。运行期间也可能将新的常量放入池中。会抛出OutOfMemoryError异常。
*直接内存:JDK1.4中新加入NIO(NewInput/Output)类,引入一种基于通道与缓冲区的I/O方式,可以使用Native函数库直接分配堆外内存。会抛出OutOfMemoryError异常。
- 自动内存管理机制(1)——运行时数据区域
- JVM自动内存管理机制之运行时数据区域
- 自动内存管理机制_运行时数据区域
- Java自动内存管理机制(二) 运行时数据区
- JVM内存管理机制--运行时数据区域(详解)
- JVM内存管理机制--运行时数据区域(详解)
- Java内存区域——运行时数据区域
- Java内存区域与内存溢出异常——运行时数据区域
- java 内存——运行时数据区域
- 1.JVM内存管理——运行时数据区域
- java JVM的内存区域(运行时数据区域)
- java JVM的内存区域(运行时数据区域)
- java JVM的内存区域(运行时数据区域)
- java JVM的内存区域(运行时数据区域)
- JAVA 内存区域---运行时数据区域
- java内存区域--运行时数据区域
- Java内存区域(运行时数据区域)
- java 内存区域——运行时数据区(堆、栈)
- 视觉与目标跟踪第一课——梯度下降法求已知函数的局部最优解
- 徐登沿的第八个程序(scanf()函数的%c格式符存在问题的解决方法)
- volatile变量应用详解
- 初识Java
- JSP request对象和response对象
- 自动内存管理机制(1)——运行时数据区域
- ClipDrawable资源使用
- debian “更换介质...“/media/cdrom/”再按回车键“ 解决方法
- jquery全选/反选/批量删除
- 月息的计算
- 【QT编程】可以查看图片并可以做幻灯片的APP
- Eclipse git上传新项目到远程仓库
- Javascrpit调用webservice接口(soap方式)
- L1-001.Hello World