当前位置: 首页 > news >正文

扬州做网站需要多少钱济南疫情最新消息

扬州做网站需要多少钱,济南疫情最新消息,2012服务器如何做网站,企业网站推广的方式有哪些垃圾判断 垃圾介绍 垃圾:如果一个或多个对象没有任何的引用指向它了,那么这个对象现在就是垃圾 作用:释放没用的对象,清除内存里的记录碎片,碎片整理将所占用的堆内存移到堆的一端,以便 JVM 将整理出的内…

垃圾判断

垃圾介绍

垃圾:如果一个或多个对象没有任何的引用指向它了,那么这个对象现在就是垃圾

作用:释放没用的对象,清除内存里的记录碎片,碎片整理将所占用的堆内存移到堆的一端,以便 JVM 将整理出的内存分配给新的对象

垃圾收集主要是针对堆和方法区进行,程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后就会消失,因此不需要对这三个区域进行垃圾回收

在堆里存放着几乎所有的 Java 对象实例,在 GC 执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象。只有被标记为己经死亡的对象,GC 才会在执行垃圾回收时,释放掉其所占用的内存空间,因此这个过程可以称为垃圾标记阶段,判断对象存活一般有两种方式:引用计数算法可达性分析算法

引用计数法

引用计数算法(Reference Counting):对每个对象保存一个整型的引用计数器属性,用于记录对象被引用的情况。对于一个对象 A,只要有任何一个对象引用了 A,则 A 的引用计数器就加 1;当引用失效时,引用计数器就减 1;当对象 A 的引用计数器的值为 0,即表示对象A不可能再被使用,可进行回收(Java 没有采用)

优点:

  • 回收没有延迟性,无需等到内存不够的时候才开始回收,运行时根据对象计数器是否为 0,可以直接回收

  • 在垃圾回收过程中,应用无需挂起;如果申请内存时,内存不足,则立刻报 OOM 错误

  • 区域性,更新对象的计数器时,只是影响到该对象,不会扫描全部对象

缺点:

  • 每次对象被引用时,都需要去更新计数器,有一点时间开销

  • 浪费 CPU 资源,即使内存够用,仍然在运行时进行计数器的统计。

  • 无法解决循环引用问题,会引发内存泄露(最大的缺点)

public class Test {public Object instance = null;public static void main(String[] args) {Test a = new Test();// a = 1Test b = new Test();// b = 1a.instance = b;     // b = 2b.instance = a;     // a = 2a = null;           // a = 1b = null;           // b = 1}
}

可达性分析
  • Java虚拟机中的垃圾回收器采用可达性分析来探索所有存活的对象

  • 扫描堆中的对象,看是否能够沿着GC Root对象为起点的引用链找到该对象,找不到,表示可以回收

  • 那么哪些对象可以作为GC Root呢?

GC Roots

可达性分析算法:也可以称为根搜索算法、追踪性垃圾收集

GC Roots 对象:

  • 虚拟机栈中局部变量表中引用的对象:各个线程被调用的方法中使用到的参数、局部变量等

  • 本地方法栈中引用的对象

  • 堆中类静态属性引用的对象

  • 方法区中的常量引用的对象

  • 字符串常量池(string Table)里的引用

  • 同步锁 synchronized 持有的对象

GC Roots 是一组活跃的引用,不是对象,放在 GC Roots Set 集合

工作原理

可达性分析算法以根对象集合(GCRoots)为起始点,从上至下的方式搜索被根对象集合所连接的目标对象

分析工作必须在一个保障一致性的快照中进行,否则结果的准确性无法保证,这也是导致 GC 进行时必须 Stop The World 的一个原因

基本原理:

  • 可达性分析算法后,内存中的存活对象都会被根对象集合直接或间接连接着,搜索走过的路径称为引用链

  • 如果目标对象没有任何引用链相连,则是不可达的,就意味着该对象己经死亡,可以标记为垃圾对象

  • 在可达性分析算法中,只有能够被根对象集合直接或者间接连接的对象才是存活对象

http://www.tj-hxxt.cn/news/109980.html

相关文章:

  • 建站需要什么软件班级优化大师官网
  • 企业网站建设选题背景百度指数分析大数据
  • 锡盟建设工程造价管理站网站网络舆情信息
  • 龙岗做网站多少钱企业网站
  • 电子毕业设计网站建设南宁网站建设优化服务
  • 什么网站可以帮忙做任务赚钱上海百度搜索优化
  • 优秀国外网站软件开发培训机构排名
  • 江苏有什么网站找工程建设人员热狗seo顾问
  • asp.net 怎么做网站怎样交换友情链接
  • 百度网页制作网站建设互联网推广广告
  • 社区微网站建设方案百度搜索下载安装
  • 一起做网店网站个人seo怎么赚钱
  • 手机做外贸有什么好的网站网络营销怎么推广
  • 厦门英文网站建设seo优化推广
  • wordpress主题top点击精灵seo
  • 聊天网站模板上海seo网络优化
  • java做音乐网站草根seo视频大全网站
  • wordpress 文章顶踩插件旺道seo推广效果怎么样
  • 申请域名空间seo刷关键词排名工具
  • 长白山开发建设集团网站直播代运营公司
  • ps怎么做网站搭建网站需要什么技术
  • 用eclipse做网站销售推广方案
  • 怎么在百度上做免费网站手机优化大师官方免费下载
  • 网站seo信息隐藏百度手机助手应用商店下载
  • 怎样给网站做 站内搜索营销方案
  • 做实验用哪些国外网站上海网站制作开发
  • 鄂州网站制作企业如何设计网站
  • 太原网站制作策划杭州最专业的seo公司
  • 国外html5 css3高端企业网站百度搜索引擎平台
  • 荆州哪个公司做网站seo应该怎么做