问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

程序开发中有没有垃圾收集?概念是什么?

发布网友 发布时间:2022-04-29 01:34

我来回答

1个回答

热心网友 时间:2022-06-27 17:33

程序开发中有垃圾收集,Lua 采用了自动内存管理。 这意味着你不用操心新创建的对象需要的内存如何分配出来, 也不用考虑在对象不再被使用后怎样释放它们所占用的内存。 Lua 运行了一个 垃圾收集器 来收集所有 死对象 (即在 Lua 中不可能再访问到的对象)来完成自动内存管理的工作。 Lua 中所有用到的内存,如:字符串、表、用户数据、函数、线程、 内部结构等,都服从自动管理。
Lua 实现了一个增量标记-扫描收集器。 它使用这两个数字来控制垃圾收集循环: 垃圾收集器间歇率 和 垃圾收集器步进倍率。 这两个数字都使用百分数为单位 (例如:值 100 在内部表示 1 )。
垃圾收集器间歇率控制着收集器需要在开启新的循环前要等待多久。 增大这个值会减少收集器的积极性。 当这个值比 100 小的时候,收集器在开启新的循环前不会有等待。 设置这个值为 200 就会让收集器等到总内存使用量达到 之前的两倍时才开始新的循环。
垃圾收集器步进倍率控制着收集器运作速度相对于内存分配速度的倍率。 增大这个值不仅会让收集器更加积极,还会增加每个增量步骤的长度。 不要把这个值设得小于 100 , 那样的话收集器就工作的太慢了以至于永远都干不完一个循环。 默认值是 200 ,这表示收集器以内存分配的“两倍”速工作。
如果你把步进倍率设为一个非常大的数字 (比你的程序可能用到的字节数还大 10% ), 收集器的行为就像一个 stop-the-world 收集器。 接着你若把间歇率设为 200 , 收集器的行为就和过去的 Lua 版本一样了: 每次 Lua 使用的内存翻倍时,就做一次完整的收集。
你可以通过在 C 中调用 lua_gc 或在 Lua 中调用 collectgarbage 来改变这俩数字。 这两个函数也可以用来直接控制收集器(例如停止它或重启它)。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 2020-10-06:java中垃圾回收器让工作线程停顿下来是怎么做的? java垃圾回收机制 污水收集器的作用是什么啊 NET CLR中一代的垃圾收集器是如何管理对象的生命周期的?什么叫非确定性终结? 帮我找一些关于垃圾处理的资料 一个很旧的面试题。关于垃圾收集器的 串行(serial)收集器和吞吐量(throughput)收集器的区别是什么? 如何提高java虚拟机的垃圾收集器 怎么看我当前运行的是哪个垃圾收集器 1.家庭户内应设置以下哪两类垃圾的收集容器?()* 会计当中所讲的“贴现”是什么意思呢? 请教贴现的具体含义 以及商业银行想央行再贴现的含义 是否属于商业银行的负债业务 贴现 请通俗解释一下 贴现属于贷款业务吗 我刚办的移动卡,套餐是69元,刚充了50块钱?每天都扣几块呢?都没有打过电话,开过流量,为什么啊? 有没有中国移动公司为老用户推出的的69元开卡,每月300G流量免费用2年的卡是真? 内蒙古移动王卡定向流量范围是什么? 我用的是移动王卡69元套餐,我每次交的话费都不够69元,用流量的时候是不是会减少? 中国移动每月消费69元能办付卡不?移动69元流量不限量套餐能办流量不限量的副卡吗_百度问一问 4G超级流量王69元套餐详情? 吸塑板和亚克力板是同一种材料吗 二者有什么区别 守护甜心的主要剧情,最好能一条一条的列出来 守护甜心里的守护甜心分别什么? 芒果tv破解版有吗? 守护甜心的人物资料 谁有芒果tv破解版的 为什么芒果tv电视上下载了有些能免费看的缺是vip 芒果tv,手机看 芒果TV破解版哪里可以下 苹果6plus移动卡经常无服务联通卡就正常 为什么我的iphone6splus用移动的卡都好好的,用联通电信的卡都是无服务 苹果6plus手机卡插入一直显示无服务,sim卡插入别的手机又能用,别的好 我的是苹果6Plus手机手机卡也是4G的,为什么网络一直都是显示E呢?求解 快手电脑上怎么上链接 考科目一和科目四看驾校一点通可以吗? 驾校一点通用着好用吗? 零失败做牛轧糖的做法步骤图,怎么做好吃 苹果6plus 经常出现无服务,有时候直接无sim卡,这是怎么回事, 你好,苹果6plus1524用的是移动的卡,显示是4G的网络,可速度确实2G的, 苹果6plus显示无效SIM卡是怎么回事?