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

垃圾回收

时间:2022-11-25 18:22:17浏览次数:33  
标签:对象 虚拟机 回收 ----- 垃圾 GC 引用

一、如何判断对象可以回收

1.1引用计数法

定义:当引用数为0时进行回收

问题:无法解决循环引用

python采用引用计数法垃圾回收机制

1.2可达性分析算法

(堆空间分析器)

 

 

GC root原理:通过对枚举GCroot对象做引用可达性分析,即从GC root对象开始,向下搜索,形成的路径称之为引用链。

如果一个对象到GC roots对象没有任何引用,没有形成引用链,那么该对象等待GC回收。

GC Root对象有哪些 

虚拟机栈 -----栈帧中的本地变量表中引用的对象 ,如正在运行方法所使用的参数、局部变量、临时变量等

本地方法栈 -----即一般说的Native方法引用的对象

方法区----- 类静态属性引用的对象

方法区----- 常量引用的对象,如字符串常量池(StringTable)里的引用

以及Java虚拟机内部的引用,如基本数据类型对应的Class对象、常驻的异常对象(如:NullPointException、OutOfMermoryError)等,还有系统类加载器;

被同步锁(synchronized关键字)持有的对象;

反映虚拟机内部情况的JMXBean、HVMTI中注册的回调、本地代码缓存等。

1.3四种引用

强软弱虚,以及终结器引用(实线为强引用)

 

 

 

标签:对象,虚拟机,回收,-----,垃圾,GC,引用
From: https://www.cnblogs.com/fulaien/p/16923337.html

相关文章

  • Java的内存回收机制
    1.Java在内存中的状态首先我们先写一个代码为例子:Person.javapackagetest;importjava.io.Serializable;publicclassPersonimplementsSerializable{static......
  • 第三节:常用解决方案剖析(Excel导出、工作单元、领域事件、JWT回收问题等)
    一.Excel导出1.效果  2.前端剖析  3.接口剖析      二.        三.         !作       者......
  • 什么是垃圾回收机制 什么叫内存泄漏
    垃圾回收机制垃圾回收机制是js内置的一种管理机制它会自动进行内存的分配和回收内存核心就是判断内存是否不再被使用 如果是就视为垃圾就进行内存释放进行垃圾回收......
  • linux 清理垃圾文件
    linux的文件系统比windows的要优秀,不会产生碎片,对于长时间运行的服务器来说尤为重要,而且linux系统本身也不会像windows一样产生大量的垃圾文件。不知道这个说法有没有可信度......
  • 基于SSM的垃圾科普设计与实现-计算机毕业设计源码+LW文档
    --TablestructureforallusersDROPTABLEIFEXISTS​​allusers​​;CREATETABLE​​allusers​​(​​id​​int(11)NOTNULLAUTO_INCREMENT,​​username......
  • JVM笔记4-垃圾回收
    文章目录视频资源地址笔记资源地址我的笔记48-49.判断垃圾-引用计数50.可达分析51.可达分析-根对象视频资源地址B站https://www.bilibili.com/video/av7054......
  • 电脑开机自动装垃圾软件,原来中了Adware:usbadmi.sys
    一位朋友的电脑最近出现异常情况,开机进入桌面后会自动安装7k7k游戏、淘宝网、开心小工具、折子购物、爱奇艺之类乱七八糟的东东,卸载后下次开机又出来。电脑中安装......
  • Java工具库Guava本地缓存Cache的使用、回收、刷新、统计等示例
    场景Java核心工具库Guava介绍以及Optional和Preconditions使用进行非空和数据校验:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127683387在上面引入Gua......
  • linux进程回收
    1为什么要进行进程资源的回收当一个进程退出之后,进程能够回收自己的用户区的资源,但是不能回收内核空间的PCB资源,必须由它的父进程调用wait或者waitpid函数完成对子进程的回......
  • 95:__del__()析构方法和垃圾回收机制
    ###__del__方法(析构函数)和垃圾回收机制__del__方法称为“析构方法”,用于实现对象被销毁时所需的操作。比如:释放对象占用的资源,例如:打开的文件资源、网络连接等。Python......