上一篇:001-JVM-知识点总括 https://blog.csdn.net/fsjwin/article/details/111304644

  • 垃圾就是你先分配了内存,后来这块儿内存不用了。就成了垃圾

1. 不同语言分配和回收垃圾的方式

1.1 C语言

申请malloc 释放free

1.2 C++语言

申请new 释放内存delete

1.3 Java语言

申请new ,自动回收

2. C&&C++手动回收的问题

  1. 忘记回收:申请了,但是忘记回收了,内存泄漏。
  2. 多次回收:释放了两次,第二次是把别人申请的数据给回收了。

3. Jvm调优是干什么的?

主要就是:垃圾回收机制的选择和在其上选择垃圾回收器及参数设置。

4. 什么是垃圾

4.1 没有任何引用指向的一个对象

状态1 :

状态2:

状态2时,new Addr就是一个垃圾!

4.2 没有任何引用指向的者多个对象(循环引用)

下图是heap中的三个对象,相互引用,但是没有其他对象指向他们,他们就是垃圾了。一堆垃圾:

5. 总结

就是一句话,没有人要的就是垃圾。
从上面的例子可以看出什么是垃圾。下面会介绍怎么具体判断垃圾。
下一篇:

002-JVM-什么是垃圾相关推荐

  1. JAVA之JVM分代垃圾回收策略(一)

    一.为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的.因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率. 在Java程序运行的过程中,会产生大量的对 ...

  2. JVM内存管理------垃圾搜集器精解

    转载自   JVM内存管理------垃圾搜集器精解 引言 在上一章我们已经探讨过hotspot上垃圾搜集器的实现,一共有六种实现六种组合.本次LZ与各位一起探讨下这六种搜集器各自的威力以及组合的威力 ...

  3. JVM内存管理------垃圾搜集器参数精解

    转载自   JVM内存管理------垃圾搜集器参数精解 垃圾搜集器选择参数 UseSerialGC:开启此参数使用serial & serial old搜集器(client模式默认值). U ...

  4. JVM分代垃圾回收策略的基础概念

    JVM分代垃圾回收策略的基础概念 由于不同对象的生命周期不一样,因此在JVM的垃圾回收策略中有分代这一策略.本文介绍了分代策略的目标,如何分代,以及垃圾回收的触发因素. 文章总结了JVM垃圾回收策略为 ...

  5. 【JVM基础】垃圾回收算法详解(引用计数、标记、清除、压缩、复制)

    前言 笔记参考 Java 全栈知识体系.星羽恒.星空茶 文章目录 前言 垃圾回收概述 引用计数法 案例 优点 缺点 标记.清除.压缩 标记 清除 压缩 标记清除算法 优点 缺点 标记压缩算法 优点 缺 ...

  6. 深入理解JVM虚拟机之垃圾回收

    深入理解JVM虚拟机之垃圾回收 什么叫做垃圾? 没有引用指向得对象都称为垃圾,好比如我们放风筝,哪些断了线得风筝都称之为垃圾. JVM怎么查找这些垃圾 一般又两种算法,1.可达性分析.2.引用计数 引 ...

  7. JVM常见的垃圾回收器

    一.常见垃圾收集器 现在常见的垃圾收集器有如下几种: 新生代收集器: Serial ParNew Parallel Scavenge 老年代收集器: Serial Old CMS Parallel O ...

  8. JVM内功心法-GC垃圾回收之GC垃圾回收过程

    JVM内功心法-GC垃圾回收之GC垃圾回收算法 GC 全称garbagecollection,垃圾回收.JAVA 为了屏蔽操作系统和平台之间的差异.选择的是采用 java 虚拟机来运行 java 应用 ...

  9. jvm内存与垃圾回收重点总结

    文章目录 一.jvm简介 1.jvm的位置 2.JVM的整体结构 3.java代码执行流程 二.类加载子系统 1.类的加载过程 2.类加载器分类 ⭐3.双亲委派机制 三.运行时数据区及线程 四.程序计 ...

  10. JVM内存管理------垃圾搜集器简介

    引言 上一章我们已经探讨过GC的各个算法,那么垃圾搜集器是什么呢? 通俗的讲,使用编程语言将算法实现出来,产生的程序就是垃圾搜集器了.既然谈到了编程语言的实现,那么在讨论垃圾搜集器的时候,就已经涉及到 ...

最新文章

  1. SWIG和PInvoke学习(1)
  2. Spark 1.6发布:引入Dataset接口
  3. MS SQL巡检系列mdash;mdash;检查重复索引
  4. partition by 函数
  5. python神经网络作用_Python · 神经网络(三*)· 网络
  6. 使用Flask-SocketIO完成服务端和客户端的双向通信
  7. 2014年3月计算机四级网络工程师考试试题及答案,某年3月计算机等级考试四级网络工程师笔试试题...
  8. 2011-08-15 “can’t create transaction lock on /v...
  9. Python数据结构与算法笔记(二):递归介绍及汉诺塔问题
  10. android 图片上传图片 报Socket: Broken pipe
  11. 关于iostream与using namespace std 的解析
  12. 完美解决鼠标单击变双击问题^_^
  13. 出中的意思是什么_从里出来是什么意思
  14. 给自己一个618消费的理由 飞利浦B8905回音壁有料分享
  15. ANSYS经典界面出图技巧总结
  16. 微信小程序上实现 table 表格
  17. Jetpack-Compose之三附带效应(副作用)
  18. GO在windows环境下的下载以及环境配置
  19. 通过ZPL指令调用zebra打印机打印面单(java版)
  20. Office拼音助手第二版(一键给文档里的汉字注音)

热门文章

  1. 如何用AI绘图画出超真实细节感超强的小姐姐?(Lora篇)
  2. G - 小晴天老师系列——可恶的墨水瓶
  3. 有符号一个字节取值范围
  4. C++ web框架drogon 使用对象关系映射ORM(Object Relational Mapping)模式
  5. unescape弃用后的代替方法
  6. Embarcadero Delphi XE317.0.4625.53395版安装过程
  7. 我心目中的北京大学:从薛定格到王恩哥
  8. 单页营销网站关键词keyword和描述description写法
  9. laravel carbon时间处理组件开发文档-中文版
  10. 从Apple最新的OS Yosemite的LaunchPad中删除旧的iMovie