JVM内存模型及GC原理
Posted banjinbaijiu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM内存模型及GC原理相关的知识,希望对你有一定的参考价值。
ref:https://blog.csdn.net/ithomer/article/details/6252552
一、Java内存模型
按照官方的说法:Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。
JVM主要管理两种类型内存:堆和非堆,堆内存(Heap Memory)是在 Java 虚拟机启动时创建,非堆内存(Non-heap Memory)是在JVM堆之外的内存。
简单来说,堆是Java代码可及的内存,留给开发人员使用的;非堆是JVM留给自己用的,包含方法区、JVM内部处理或优化所需的内存(如 JIT Compiler,Just-in-time Compiler,即时编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码。
以上是关于JVM内存模型及GC原理的主要内容,如果未能解决你的问题,请参考以下文章