栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JVM及性能调优

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JVM及性能调优

先上图

3个部分中运行时数据区最主要

栈(虚拟机栈、线程栈):局部变量,方法的局部变量只在方法的运行作用域范围之内有效 。java虚拟机,只要线程开始运行,当执行到方法的时候,就会给这个方法在线程栈分配一块自己专属的内存区域,这一小块内存空间就叫栈帧内存空间,用来存放方法自己的局部变量。这个栈遵循先进后出(FILO),跟方法的嵌套、调用顺序相符合,有压栈弹栈。

程序计数器:是一个记录着当前线程所执行的字节码的行号指示器。在JVM中,通过程序计数器来记录某个线程的字节码执行位置。因此,程序计数器是具备线程隔离的特性,也就是说,每个线程工作时都有属于自己的独立计数器。程序计数器的值是由执行引擎来修改的。

方法区:1.8之前叫永久代,之后叫元空间,是操作系统的物理内存。存放常量、静态变量、类信息。

本地方法栈:native修饰的,运行本地方法时分配的内存空间

堆:

可达性:将“GC Roots”对象作为起点,从这些节点开始向下搜索引用的对象,能找到的对象标记为“非垃圾对象”其余未标记的对象都是垃圾对象。线程栈的本地变量、静态变量、本地方法栈的对象等等都可以作为GC Toots的根节点。没有指针指向的游离对象会被回收。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/282261.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号