java虚拟机内存分布
2014-12-27 11:08
183 查看
java虚拟机内存一般分为以下5部分:
程序计数器:可以看做当前线程所执行的字节码的行号指示器。java虚拟机在执行多线程时,同一时刻只能执行一个线程的一条指令,固程序计数器是记录对应线程所执行到的位置,也就是说每个线程要对应一个程序计数器。如果线程执行的是java方法,计数器显示的是行号,如果执行的是native的时候,则显示undefinded,该区域还是唯一一个java虚拟机中没规定任何内存溢出的区域。
java虚拟机栈:也就是经常说的栈内存,存储局部变量,其中包括(8大基本数据类型,对象的引用变量等),在编译时完成分配。
本地方法栈:与java虚拟机栈类似,不过处理的是native方法。
java堆:存放对象的实例,垃圾回收机制主要负责的区域,当内存不足时,为抛出OutOfMemberError的异常,属于线程共享。
方法区:主要存放类信息和常量,静态变量
程序计数器:可以看做当前线程所执行的字节码的行号指示器。java虚拟机在执行多线程时,同一时刻只能执行一个线程的一条指令,固程序计数器是记录对应线程所执行到的位置,也就是说每个线程要对应一个程序计数器。如果线程执行的是java方法,计数器显示的是行号,如果执行的是native的时候,则显示undefinded,该区域还是唯一一个java虚拟机中没规定任何内存溢出的区域。
java虚拟机栈:也就是经常说的栈内存,存储局部变量,其中包括(8大基本数据类型,对象的引用变量等),在编译时完成分配。
本地方法栈:与java虚拟机栈类似,不过处理的是native方法。
java堆:存放对象的实例,垃圾回收机制主要负责的区域,当内存不足时,为抛出OutOfMemberError的异常,属于线程共享。
方法区:主要存放类信息和常量,静态变量
相关文章推荐
- Java虚拟机的内存是如何分布的
- java虚拟机内存分布
- Java虚拟机的内存是如何分布的
- 理解Java虚拟机(4)之JVM运行时内存分配管理和对象内存分布
- Java虚拟机内存区域分布和字节码简析
- Java虚拟机内存分布总结
- java虚拟机内存分布
- Java虚拟机内存分布与介绍
- C++ 类对象内存分布
- Java虚拟机学习 - 对象内存分配与回收
- JVM内存分布
- C/C++变量在内存中的分布 .
- C++类内存分布
- 【学习笔记】Java虚拟机(六)内存分配与回收策略
- C语言中内存分布及程序运行中的BSS段、数据段、代码段、堆和栈
- 【学习笔记】Java虚拟机(七)内存调优分析
- java虚拟机学习笔记_第一部分内存管理机制
- 解决java虚拟机内存不足的错误 java.lang.OutOfMemoryError: PermGen space 没有文件TOMCAT_HOME/bin/catalina.sh
- Java虚拟机学习(7):对象内存分配与回收
- 解释的很好的。堆,栈。程序的内存分布。 bss data rodata text heap stack。