资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

javaScript垃圾回收

Java 更新时间: 发布时间: 计算机考试归档 最新发布

javaScript垃圾回收

        垃圾回收机制也称Garbage Collection简称GC。在JavaScript中拥有自动的垃圾回收机制,通过一些回收算法,找出不再使用的变量或属性,由JS引擎按照固定时间间隔周期性的释放其所占的内存空间。

一般的GC算法:

1、引用计数法

设置引用数,判断当前引用数是否为零

优点:可以即时回收垃圾对象,减少程序卡顿时间

缺点:无法回收循环引用的对象,资源消耗较大

2、Mark-Sweep(标记清除)

分标记和清除两个阶段完成,遍历所有的对象找到标记活动对象,遍历所有对象清除没有标记的对象,回收相应的空间。

优点: 循环引用不能回收

缺点:存储空间碎片化、不能立即回收空间

3、Mark-Compact(标记整理)

先标记,再整理成连续的线性空间。

优点:减少碎片化空间,不会立即回收垃圾对象

V8常用GC算法:

  1. 空间复制
  2. 标记清除
  3. 标记整理
  4. 标记增量
  5. 分代回收:

  • 新生代对象采用复制算法+标记整理。

        新生代内存一分为二,活动对象存储于使用空间From中,标记整理后将活动对象copy到空闲空间To。From与To交换空间完成释放。

  • 老生代采用标记清除、标记整理、增量标记算法。

        老生代就是指存活时间较长的对象,如全局变量下的一些对象和闭包里的数据。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/1093533.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【javaScript垃圾回收】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2