JVM垃圾回收概述

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

1.概述

Java和C++的区别就在于垃圾回收技术和内存的动态分配上,C++没有相应的垃圾收集技术,只能手动的回收。而Java语言中有自动的垃圾回收机制,这大大的提高了开发效率。注意:垃圾回收算法并不是Java语言的产物。

2.什么是垃圾?

垃圾是指在运行程序的过程中没有任何引用指向的对象,这些对象就是要回收的垃圾,如果没有回收,那么等到垃圾的堆积,会大量的占用内存,就会导致内存溢出。

3.为什么要GC?

GC的作用就是回收无用的对象清理内存中的碎片,让运行性能更加的优良。

4.内存溢出和内存泄露

内存溢出是指大量的垃圾数据的堆积,一直在占用着内存,最终导致内存不够用程序崩溃。

内存泄露是指该对象不被垃圾回收器标记但是也不引用,就一直白白的占用内存空间,最终导致内存不够用程序崩溃。

5.Java中自动垃圾回收的优缺点

优点

  • 大大提升了开发效率,可以让程序员更关注于业务代码的实现。

  • 降低了内存溢出和内存泄露的风险。

    缺点

  • 自动了内存管理是一个黑匣子,程序员在遇到内存溢出问题不好检错和定位。

  • 对于解决这些内存溢出的问题,我们必须掌握内存回收的原理和内存分配。

6.垃圾回收的区域

垃圾回收的区域是Java堆元空间(方法区),重点是Java堆。文章来源地址https://www.toymoban.com/news/detail-600370.html

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

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

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

相关文章

  • JVM基础(5)——JVM垃圾回收算法

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

    2024年02月02日
    浏览(34)
  • JVM——垃圾回收器G1+垃圾回收调优

    定义: 取代了CMS垃圾回收器。和CMS一样时并发的。  适用场景: 物理上分区,逻辑上分代。   相关JVM参数: -XX:+UseG1GC -XX:G1HeapRegionSize=size -XX:MaxGCPauseMillis=time  三个回收阶段,第一个是新生代回收,第二个是新生代+CM,第三个是混合回收。 当老年代内存超过阈值,会在新生代垃

    2024年02月12日
    浏览(33)
  • 【JVM】JVM执行流程 && JVM类加载 && 垃圾回收机制等

    目录 🌷1、JVM是什么? 🌷2、JVM的执行流程(能够描述数据区5部分) 🌷3、JVM类加载过程 🌷4、双亲委派机制:描述类加载的过程 问题1:类加载器 问题2:什么是双亲委派模型?  问题3:双亲委派模型的优点 🌷5、垃圾回收机制(重要,针对的是堆)    问题1:判定对象

    2024年02月15日
    浏览(48)
  • JVM基础(6)——JVM垃圾回收器简介

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

    2024年01月23日
    浏览(31)
  • 【JVM】浅看JVM的运行流程和垃圾回收

    JVM( Java Virtual Machine)就是Java虚拟机。 Java的程序都运行在JVM中。 JVM的执行流程: 程序在执行之前先要把java代码转换成 字节码(class文件) ,JVM 首先需要把字节码通过一定的方式 类加载器(ClassLoader) 把文件加载到内存中 运行时数据区(Runtime Data Area) ,而字节码文件是

    2024年02月16日
    浏览(29)
  • 【JVM】JVM垃圾回收GC相关参数说明

    -XX:+PrintCommandLineFlags : 输出JVM启动参数 -XX:+UseSerialGC :在新生代和老年代使用串行收集器 -XX:SurvivorRatio :设置eden区大小和survivior区大小的比例 -XX:NewRatio :新生代和老年代的比 -XX:+UseParNewGC :在新生代使用并行收集器 -XX:+UseParallelGC :新生代使用并行回收收集器 -XX:+UseParallelO

    2024年02月04日
    浏览(37)
  • 【JVM】11. 垃圾回收及回收算法算法

    2023年05月29日
    浏览(57)
  • JVM---垃圾回收算法介绍

    目录 分代收集理论 三种垃圾回收算法 标记-清除算法(最基础的、基本不用) 标记-复制算法 标记-整理算法 正式因为jvm有了垃圾回收机制,作为java开发者不会去特备关注内存,不像C和C++。 优点 :开发门槛低、安全 缺点 :性能问题。c和c++可以自己操控内存等,性能更高

    2024年02月12日
    浏览(26)
  • JVM03-优化垃圾回收

           JVM的内存区域中,程序计数器、虚拟机栈和本地方法栈这3个区域是线程私有的,随着线程的创建而创建,销毁而销毁;栈中的栈帧随着方法的进入和退出进行入栈和出栈操作,每个栈帧中分配多少内存基本是在类结构确定下来的时候就已知的,因此这三个区域的内存

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

    标记-清除算法将垃圾回收分为两个阶段,标记阶段和清除阶段 在标记阶段首先通过GC Roots,标记所有从根节点开始的对象,未被标记的对象就是未引用的垃圾对象。然后,在清除阶段,清除未被标记的对象。 适合场景: 1、存活对象较多的情况下比较高效 2、使用于老年代

    2024年01月16日
    浏览(32)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包