码迷,mamicode.com
首页 > 其他好文 > 详细

jvm内存模型

时间:2020-02-12 18:04:33      阅读:52      评论:0      收藏:0      [点我收藏+]

标签:信息   机制   https   raw   jpg   引用类型   orm   私有   回收机制   

VM 中文名java虚拟机,是用来运行java程序的一个平台,这篇文章 主要讲述 JVM的内存模型。

 

首先JVM将内存划分为了5大块,如下图所示:

技术图片JVM内存模型

 

这5大块可以分为 两大类,分别是 线程私有的,和 线程共享的

线程私有的

虚拟机栈,本地方法栈,程序计数器

这块区域的数据是每个线程私有的,随着线程的创建而创建,线程的结束而释放

 

虚拟机栈

这块区域用于存放局部变量表(基本类型的变量,会把数据一起存在这,引用类型的 会将内存地址存在这) 以及 正在运行的方法信息

 

本地方法栈

这一块和虚拟机栈基本一致,但他存放的是 本地方法 创建的数据,程序员一般不需要过多的去关注他。

 

程序计数器

这块区域存放的是 线程正在执行的 字节码的行号指示器

 

线程共享的

方法区,堆

这块区域的数据是每个线程共享的,他的生命周期跟线程无关,通常有垃圾回收机制来进行回收

 

方法区

这块区域也被称为 永久代 或者静态区,从名字就可以看出来,他是用于存放一些 永久性质的数据的,包括如下数据:

1. 类的访问修饰符,类型(接口,抽象,类),全线名称

2. 字段的访问修饰符,类型,名称,

3. 方法的访问修饰符,返回类型,名称,参数个数,参数类型等。

 

同时 静态成员变量以及常量(包括值) 也会存在这块区域。

 

这块区域用于存放对象的实例,垃圾回收一般情况下只会在这个区域进行。

jvm内存模型

标签:信息   机制   https   raw   jpg   引用类型   orm   私有   回收机制   

原文地址:https://www.cnblogs.com/wcss/p/12299968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!