java虚拟机内存分布
来源:互联网 发布:糊是什么意思网络语言 编辑:程序博客网 时间:2024/05/19 20:39
《深入理解java虚拟机》,很好的解释了JVM的工作原理,下面是我自己在学习这本时,总结的一些笔记,摘自周志明的《深入理解java虚拟机》第二版
理解jvm的工作原理,对java员来说是非常必要的。
java虚拟机运行时数据区分为:方法区,堆区,栈区,程序计数器。
1、程序计数器
程序计数器是一块比较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。
多线程时,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储。
我们称这类内存区域为“线程私有”的内存。
2、栈stack
线程私有,生命周期和线程相同。
存放基本数据类型和对象的引用。
基本数据类型有8种,Boolean,byte,int,double,float,short,long,char。
3、堆Heap
java堆是java虚拟机内存中最大的一块。
java堆是被所有线程所共享的一块区域,在虚拟机创建时启动,存放对象实例。
java堆是垃圾回收器管理的主要区域,因此又被称为“GC堆”(Garbage Collection Heap)。
java堆还可以细分为新生代和老年代。
4、方法区
方法区,和java堆一样,是线程共享的一块区域,用于存储已经被虚拟机加载的类信息,常量,静态变量、即时编译器编译的代码。
运行时常量池是方法区的一部分。
阅读全文
0 0
- java虚拟机内存分布
- java虚拟机内存分布
- Java 虚拟机的内存分布
- java 虚拟机的内存分布
- Java 虚拟机的内存分布
- Java虚拟机内存分布总结
- Java虚拟机内存分布与介绍
- 虚拟机内存分布
- JVM虚拟机内存分布
- java虚拟机的内存是如何分布的
- Java虚拟机的内存是如何分布的
- java内存分布
- java内存分布
- Java内存分布
- JAVA 的内存分布
- java 内存分布
- Java内存区域分布
- JAVA中的内存分布
- git 操作方法
- mybatis小坑总结
- MySQL里面的子查询
- stylus之内置方法(Built-in Functions)
- 笑谈java并发编程五之AtomicLong*介绍
- java虚拟机内存分布
- 开发笔记
- Srping Boot Devtools部署(spring-boot-devtools)
- jquery常用语句总结
- 特征工程
- xml to html 双向数据绑定handlebars 处理
- mysql和oracle获取第3,4条数据
- Unity美术资源的优化
- 腾讯云基本配置(javaweb)ubuntu版本