首页 > 其他分享 >垃圾回收机制

垃圾回收机制

时间:2024-10-31 10:47:03浏览次数:1  
标签:代是 对象 回收 计数器 垃圾 机制 内存

垃圾回收机制
 1.引用计数法:每个对象都有一个引用计数器,当对象被引用时,计数器加1,当引用失效时,计数器减1,当计数器为0时,对象被回收。垃圾回收器定期(周期性)找出那些不再被引用的对象,然后释放这些对象所占用的内存。
 2. 标记-清除法:从根节点开始遍历所有对象,标记所有可达的对象,然后清除所有未被标记的对象。垃圾回收器定期(周期性)找出那些未被标记的对象,然后释放这些对象所占用的内存。
 3. 复制算法:将内存分为两个相等的区域,每次只使用其中一个区域。当垃圾回收器运行时,它会将所有可达的对象复制 到另一个区域,然后释放原来的区域。垃圾回收器定期(周期性)运行,以保持内存的可用性。
4. 分代收集法:将对象分为不同的代,每一代都有不同的存活时间。垃圾回收器定期(周期性)运行,以保持内存的可用性。 包括0,1,2代,0代是刚刚创建的对象,1代是经过一次垃圾回收后仍然存活的对象,2代是经过两次垃圾回收后仍然存活的对象。大对象一般都在稳定的2代,即使需要回收也只是清空数组,因为大对象申请和回收的代价很高。

标签:代是,对象,回收,计数器,垃圾,机制,内存
From: https://www.cnblogs.com/lvqiang/p/18517200

相关文章

  • SBOM SaaS平台新功能上线,引入漏洞预警机制!
    随着数字化浪潮的推进,软件已成为我们生活中不可或缺的一部分。然而,随着软件复杂度的不断提升,其安全性问题也日益凸显。我们会通过体检来检查身体是否存在健康问题,软件同样需要一份“体检报告”。SBOM(软件物料清单)详细记录了软件产品所依赖的所有组件、库、框架等。这一清......
  • 鸿蒙IME Kit高级开发:共享沙箱机制与输入法数据传输
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。HarmonyOS的IMEKit不仅提供了基础......
  • 鸿蒙IME Kit高级开发:共享沙箱机制与输入法数据传输
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。HarmonyOS的IMEKit不仅提供......
  • YOLOv8改进 - 注意力篇 - 引入GAM注意力机制
    #YOLO##目标检测##计算机视觉#一、本文介绍作为入门性篇章,这里介绍了GAM注意力在YOLOv8中的使用。包含GAM原理分析,GAM的代码、GAM的使用方法、以及添加以后的yaml文件及运行记录。二、GAM原理分析GAM官方论文地址:文章GAM官方代码地址:​GAM注意力机制:GAM采用了顺序的通......
  • 【Web前端】JavaScript 对象原型与继承机制
    JavaScript是一种动态类型的编程语言,其核心特性之一就是对象和原型链。理解原型及其工作机制对于掌握JavaScript的继承和对象关系非常重要。什么是原型每个对象都有一个内部属性 ​​[[Prototype]]​​​,这个属性指向创建该对象的构造函数的原型对象。这个内部属性通......
  • 后台管理系统的通用权限解决方案(八)认证机制介绍、JWT介绍与jjwt框架的使用
    文章目录1认证机制介绍1.1HTTPBasicAuth1.2Cookie-SessionAuth1.3OAuth1.4TokenAuth2JWT2.1JWT介绍2.2JWT的数据结构2.2.1JWT头2.2.2JWT有效载荷2.2.3JWT签名3jjwt3.1jjwt介绍3.2jjwt案例1认证机制介绍1.1HTTPBasicAuthHTTPBasicAuth......
  • Java Z 垃圾收集器如何彻底改变内存管理
    大家好,我是V哥,今天的内容来聊一聊ZGC,JavaZGarbageCollector(ZGC)是一个低延迟垃圾收集器,旨在优化内存管理,主要用于大内存应用场景。它通过以下几个关键创新,彻底改变了传统Java的内存管理方式:V哥总结的以下5点,欢迎一起讨论。1.极低的暂停时间ZGC的暂停时间一般保持在10毫......
  • 浅析双亲委派机制
    双亲委派机制1)什么是双亲委派虚拟机在加载类的过程中需要使用类加载器进行加载,而在Java中,类加载器有很多,那么当JVM想要加载一个.class文件的时候,到底应该由哪个类加载器加载呢?这就不得不提到"双亲委派机制"。首先,我们需要知道的是,Java语言系统中支持以下4种类加载器:Bootstrap......
  • redis主从复制与哨兵机制
    一、主从复制1、主从复制主从复制架构用来备份主节点的数据,主节点接受用户请求,从节点同步数据2、架构图3、搭建主从复制创建三个目录代表三台机器,master-7000,slave-7001,slave-7002拷贝源码中的redis.conf分别到master-7000,slave-7001,slave-7002中修改三台机器......
  • 【RocketMQ】消息的发送过程之 Broker 故障延迟或者容错机制
    1  前言上节我们主要看了下消息生产者的启动以及消息的发送过程,内容比较多,篇幅比较长,有一些细节没看到,比如Broker的故障延迟机制,所以这节我们就单独来看一下这块内容。还有我们要知道的是,这个机制默认是关闭的://ClientConfig/***开启消息发送的客户端容错机制*Ena......