对于JAVA虚拟机运行时数据区的理解
来源:互联网 发布:java动物继承例子 编辑:程序博客网 时间:2024/06/08 13:48
1.程序计数器:这个是被线程独占的一块内存区域,主要是在字节码解释器中执行吓一条指令的地址,特别是在多线程的情况下,由于是采用时间片轮换的机制实现线程切换(特特别是在单核处理下),需要保留现场,,当cpu处理完其他请求,会根据程序计数器继续执行。
2.JAVA虚拟机栈:这个也是被线程独占的一块内存区域,主要存储局部变量表,操作数栈,动态链接,方法出口等信息,,局部变量表存放了编译期可知的各种基本数据类型以及对象的引用。
3.本地方法区:和JAVA虚拟机栈差不多,不同的市JAVA虚拟机栈为为虚拟机执行java方法服务,而本地方法栈则为虚拟机用到的Native方法服务
4.JAVA堆:事所有线程共享的一块区域,主要为创建对象的实例,事垃圾收集器的主要区域,也叫做GC堆,当前的虚拟机基本上都是可扩展的(-Xmx,-Xms控制,两者相等,则固定不变)
5.方法区:我对于方法区的理解不是很清除,,HotSpot是把它当成与堆平齐的一块区域,,也叫做永久代,主要存储编译过的类信息,静态变量,常量,即时编译器编译后的代码等等
6.运行时常量池:事方法区的一部分,用于存放编译期生成的各种自变量和符号引用
7.直接存储:使用Native函数库直接分配堆外内存
1 0
- 对于JAVA虚拟机运行时数据区的理解
- Java虚拟机运行时的数据区
- 深入理解java虚拟机-java虚拟机运行时数据区
- java虚拟机运行时的数据区域
- Java虚拟机运行时的数据区域
- Java虚拟机运行时数据区
- 【转】 Java虚拟机运行时数据区
- 关于java虚拟机运行时数据区
- java虚拟机运行时数据区
- Java 虚拟机运行时数据区介绍
- Java虚拟机运行时数据区
- Java虚拟机运行时数据区
- java虚拟机运行时数据区小记
- Java虚拟机运行时数据区
- JAVA虚拟机运行时数据区浅谈
- Java虚拟机运行时数据区
- Java虚拟机运行时数据区
- Java虚拟机运行时数据区
- 实现两个整数变量的互换(不借助其他变量)
- cerr和clog
- Thread-使用同步块来有效的减少同步范围,可以提高代码并发运行的效率。
- 要让自己根本停不下来-三年前的文章整理
- 华为校招面试+实习经历+工作经历
- 对于JAVA虚拟机运行时数据区的理解
- MAC时隔半年配置phpmyadmin成功 发篇博客希望初学者少走弯路
- 3.Javascript语法-条件语句if...else
- 判断某一年是否是闰年
- Vue $nextTick
- 动态规划之多边形游戏
- 验证登录信息的合法性
- 找最大序列
- 欢迎使用CSDN-markdown编辑器