lua虚拟机的垃圾回收机制

1.标记清除算法

是世界上首个值得纪念的GC算法。如其字面意思一样,它由标记阶段和清除阶段构成。标记阶段是把所有活动对象都做上标记的阶段。清除节点就是把那些没有标记的对象,也就是非活动对象回收的阶段。通过这两个阶段。可以让不能利用的内存空间重新得到利用。

|---|----------------------------------------|
| 1 | 碎片化 |
| 2 | 分配速度 |
| 3 | 与写实复制技术不兼容 |
| 4 | stop-the-world类型的gc方法,会在瞬时极大影响程序运行的性能。 |
[缺点]

2.增量式标记清除算法

三种颜色:白色、灰色、黑色。

相关推荐
huaqianzkh1 小时前
WinForm C#:循环修改控件UI闪烁卡顿?SuspendLayout / ResumeLayout 与 BeginUpdate 优化
开发语言·ui·c#
杨凯凡1 小时前
Spring Boot 链路追踪实战:Micrometer、TraceId 与异步线程上下文传播
java·spring boot·后端
计算机毕设定制辅导-无忧学长1 小时前
《基于Spring Boot的迷游哈游戏综合服务平台的开发》
java·vue.js·spring boot·mysql·迷游哈游戏综合服务平台
非优秀程序员10 小时前
第04章 邮箱大战,163 与 QQ 的暗战|《互联网产品恩仇录》
java·vue.js·架构
知已难寻11 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
沐晓时光11 小时前
C语言入门,内存函数知识讲解
c语言·开发语言
文丑颜不良啊13 小时前
LeetCode2481~2500题目解析
java·leetcode
Flynn Liang14 小时前
同一需求三套写法:用 Spring AI、LangChain4j、AgentScope Java 各实现一个带工具调用的 RAG 助手(实战对比)
java·人工智能·大模型·架构设计·spring ai·langchain4j·agentscope
聪明的笨猪猪15 小时前
实际工程问题:AI 生成 Spring Cache(@Cacheable / @CachePut / @CacheEvict)缓存注解踩坑
java·经验分享·面试·ai编程
愿有所息15 小时前
记一次 ARM64 + JDK8 上 fastjson2 的诡异数据错乱
java