- 31
- 0
- 约4.57千字
- 约 6页
- 2019-09-28 发布于山东
- 举报
垃圾回收概要说明.doc
垃圾回收概要说明
思路比较:
1 作弊
最快、最简单
失去了实验的价值,但是可用于检测标记、清理这两个步骤的正确性
可移植性差,在VS2010上实现的不能在VC6.0上成功执行,需要调试、重新计算位移偏差
2 遍历
低效
实验的重点
可移植性强,甚至只需要做细小修改就可以移植到linux上
3 追踪
高效
因为测试用例的限制,其性能不能在本次实验中完全显现出来
采用面向对象的程序语言进行设计,能很好地引导客户程序正确使用;然而采用面向过程的程序语言进行实现,需要很完善的使用手册支撑
代码复杂度很高,非常容易出错
代码实现:
1.辅助数据结构
栈
2.收集根集
扫描局部变量 (src v2.0)
扫描全部变量 (src v2.1)
扫描堆变量
3.标记
4.清理
5.其他
已分配空间的管理
该机制用一棵splay树来管理已分配的空间,当调用splay (ptr_t i, Tree *t)时,即使i不在树中,树也会进行调整,以便使靠近i的值最靠近根,当然包括就在根节点。其中的contains(ptr_t i, Tree **the_tree)函数,检查i是否在分配的空间里,如果在,返回指向整块空间的指针,如果不在,则返回空指针。
空闲空间管理机制
空闲空间靠双向链表来管理,使用gc_remove_free函数和gc_add_free函数来对双链表进行添加和删除操作。
gc_malloc
您可能关注的文档
最近下载
- 探究H矩阵方程组:预条件迭代法与预条件对角占优性的深度剖析.docx VIP
- 2026年8月南方电网产融控股集团有限公司鼎和财产保险股份有限公司社会招聘44人笔试备考题库及答案详细解析.docx VIP
- 鼎和财产保险股份公司招聘笔试题库2026.pdf
- 楼地面专业图集-07J306窗井、设备吊装口、排水沟、集水坑.pdf VIP
- 露天煤矿土石方剥离综合单价确定方法 (1).docx VIP
- IV设备故障手册要点.doc VIP
- 龙迅股份国产高清视频芯片龙头,车载及HPC业务构筑新增长极.pdf
- 罐基础施工方案.pptx VIP
- 2025年中国管道测漏仪市场调查研究报告.docx
- 三年级(上)英语 重点知识点汇总.pdf VIP
原创力文档

文档评论(0)