JVM整理合集①

这篇具有很好参考价值的文章主要介绍了JVM整理合集①。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文主要叙述JVM的内存结构。

JVM内存结构主要分为5部分,分别是:程序计数器、虚拟机栈、本地方法栈、堆、方法区。

jvid,JVM,jvm,java,算法

在JDK1.7的时候,是有永久代的,但是到了JDK1.8,替代永久代的是元数据区,两者本质上一样,不过元空间是在本地内存中,而不在虚拟机中。

 下面针对这五部分进行展开叙述。

一、程序计数器

1.定义

        程序计数器又称PC寄存器,是一块较小的数据空间,如果执行的是java方法,它是当前线程正在执行的那条字节码指令的地址;如果执行的是Native方法,则定义为Undefined。

2.作用

  • 字节码解释器通过改变程序计数器来依次读取指令,从而实现代码的流程控制。
  • 在多线程情况下,程序计数器记录的是当前线程执行的位置,从而当线程切换回来时,就知道上次线程执行到哪了。

3.程序计数器的特点

  • 是一块较小的内存空间。
  • 线程私有,每条线程都有自己的程序计数器。
  • 生命周期:随着线程的创建而创建,随着线程的结束而销毁。
  • 是唯一一个不会出现 OutOfMemoryError 的内存区域

二、java虚拟机栈

1.定义

Java 虚拟机栈是描述 Java 方法运行过程的内存模型。它会为每一个将要运行的java方法创建一个“栈帧”的区域,用于存放该方法运行过程中的一些信息&文章来源地址https://www.toymoban.com/news/detail-599396.html

到了这里,关于JVM整理合集①的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java虚拟机(JVM):垃圾收集算法

    目录 一、分代收集理论 二、标记-清除算法 三、标记-复制算法  四、标记-整理算法 分代收集理论建立在两个分代假说之上: 1、弱分代假说:绝大多数对象都是朝生夕灭的。 2、强分代假说:熬过越多次垃圾收集过程的对象就越难以消亡。 这两个分代假说共同奠定了多款垃

    2024年02月12日
    浏览(39)
  • 【Java虚拟机】JVM垃圾回收机制和常见回收算法原理

    1.垃圾回收机制 (1)什么是垃圾回收机制(Garbage Collection, 简称GC) 指自动管理动态分配的内存空间的机制,自动回收不再使用的内存,以避免内存泄漏和内存溢出的问题 最早是在1960年代提出的,程序员需要手动管理内存的分配和释放 这往往会导致内存泄漏和内存溢出等问

    2024年02月02日
    浏览(38)
  • JVM知识点整理

    JVM GC只回收堆区和方法区内的基本类型数据和对象。 栈区的数据(仅指基本类型数据),在超出作用域后会自动出栈释放掉,所以其不在JVM GC的管理范围内。 关联面试题:fullgc会回收方法区(元空间)吗? 1.常量对象不再任何地方被引用的时候,这个常量可以被回收 2.无用类

    2024年02月09日
    浏览(28)
  • JVM重点整理

    类加载器的作用:负责把class文件加载到内存中 类加载过程: 加载: 通过类的全限定名获取此类的二进制字节流 文件的编码结构----运行时的内存结构 内存中生成一个class对象 链接: 验证:保证被加载类的一个正确性 准备:为类变量分配内存 设置类变量初始值(不会为f

    2024年02月16日
    浏览(23)
  • JVM--- 垃圾收集器详细整理

    目录 一、垃圾收集需要考虑的三个事情: 二、垃圾回收针对的区域 三、如何判断对象已死         1.引用计数算法:         2.可达性分析算法 四、引用 五、生存还是死亡? 六、回收方法区 七、垃圾收集算法         1.分代收集理论 2.标记-清除算法         3.标记

    2024年02月19日
    浏览(59)
  • 【Java】图解 JVM 垃圾回收(一):GC 判断策略、引用类型、垃圾回收算法

    垃圾 是指运行程序中 没有任何引用指向的对象 ,需要被回收。 内存溢出 :经过垃圾回收之后,内存仍旧无法存储新创建的对象,内存不够溢出。 内存泄漏 :又叫 “ 存储泄漏 ”,对象不会再被程序使用了,但是 GC 又不能回收它们。例如:IO 流不适用了但是没有被 Close、

    2024年02月19日
    浏览(38)
  • 第一次后端复习整理(JVM、Redis、反射)

    文章仅为自身笔记 详情查看一篇文章掌握整个JVM,JVM超详细解析!!! jvm是Java虚拟机 程序员编写代码形成.java文件 经过javac编译成.class文件 再通过JVM的类加载器进入运行时数据区 就是我们java运行时的东西的存放区域 其中分为五个模块 线程共享的: 方法区 堆 线程私有的

    2024年02月15日
    浏览(26)
  • 【JVM】JVM 垃圾回收算法

    目前JVM中有三种常见的垃圾回收算法,分别是:标记清除、标记整理和复制,这三种垃圾回收算法各有优缺点,下面逐一介绍。 在读本篇文章中,如果对JVM中哪个是垃圾,哪个不是垃圾,JVM到底是怎么知道的,请先读下面这篇文章 【JVM】JVM 判断对象存活算法(引用计数算法

    2024年02月09日
    浏览(41)
  • Jvm对象回收算法-JVM(九)

    上篇文章介绍了jvm运行时候对象进入老年代的场景,以及如何避免频繁fullGC。 Jvm参数设置-JVM(八) 老年代分配担保机制 这个机制的目的是为了提升效率,在minorGC之前,会有三次判断,之后再次minorGC速度会很快。 老年代剩余空间是否 大于 年轻代里现在所有对象 大于的话则

    2024年02月13日
    浏览(42)
  • JVM基础(4)——JVM存活判定算法

    作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 学习必须往深处挖,挖的越深,基础越扎实! 阶段1、深入多线程 阶段2、深入多线程设计模式 阶段3、深入juc源码解析

    2024年02月02日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包