我对垃圾收集的工作方式感兴趣。我已经读过一些如mark-and-sweep,stop-and-copy,generational GC等的工作......我想试验一下这些方法并比较它们的行为。什么是开始尝试自己的好方法?理想情况下,C,Java或Python(尽管后两个本身是垃圾收集的,所以它似乎很难使用它们......)我如何试验垃圾收集?
10
A
回答
14
从来没有玩过它,但总是被提及用于C/C++的是Hans Boehm's。
0
实现您自己的JVM。没有什么花哨,只是基础。有很多很多的程序/编译器/语言可以生成JVM代码,因此您有足够的材料可以进行测试。
2
.NET运行时和Java运行时现在是开源的,所以如果您想要使用当前的支持编程语言,您可以尝试运行时它自己。但是,如果你想自己做,你可能需要创建自己的运行时,它有自己的语言。
0
好玩,但垃圾收集是一个黑暗的艺术。不要让它工作,而是要使它与最新的虚拟机的效率一起工作。
我们正在谈论多阶段和魔术,这使得分配速度比malloc的堆栈分配速度更可比。
整个伊甸园的概念岩石。
您可能想阅读一些关于所用技术的白皮书。
这里,似乎有一个很好的概述(只是从一个快速谷歌/扫描)谁又发展了Factor programming language写了一些职位对他实施垃圾收集的文章
0
Slava Pestov。你可以在它身上找到的帖子与此链接:
http://factor-language.blogspot.com/search?q=garbage+collection
从上周日,9月24日的特别后开始,2006年
1
0
MMTk包含一大组高性能垃圾收集器。它包括:
- 复制收集
- 跟踪收藏家
- 引用计数收藏家
它还具有:
- 阻止世界收藏家
- 并发收藏家
由于它是一个研究平台,它有一些先进的收集器,如generation reference counting collector。
相关问题
- 1. 如何调试.net垃圾收集?
- 2. 垃圾收集
- 3. 垃圾收集java
- 4. DoctrineCommonCache垃圾收集?
- 5. Java垃圾收集
- 6. 垃圾收集器
- 7. C#垃圾收集
- 8. Java垃圾收集
- 9. WeakEvent垃圾收集
- 10. GWT垃圾收集
- 11. 垃圾收集如何收集自我引用对象?
- 12. 垃圾收集YGCT和垃圾收集时间不断上升
- 13. 垃圾收集测试失败?
- 14. 垃圾收集器如何确定对象是否是垃圾?
- 15. 垃圾收集器如何检测垃圾?
- 16. 何时收集垃圾回收值?
- 17. 如何打破垃圾收集?
- 18. Redux垃圾收集如何工作?
- 19. 如何配置.net垃圾收集器?
- 20. 垃圾收集机制如何工作?
- 21. 如何触发垃圾收集?
- 22. 如何关闭并发垃圾收集?
- 23. 如何分析JVM垃圾收集?
- 24. Erlang原子如何被垃圾收集
- 25. Android ART垃圾如何收集?
- 26. 如何查看垃圾收集日志?
- 27. 如何禁用Java垃圾收集器?
- 28. 垃圾收集器如何识别根
- 29. 如何跟踪垃圾收集对象
- 30. 垃圾收集:将对象收集
我想补充,这被认为是*如果你想保持内/ C的C++而不是使用虚拟机... – 2008-10-29 20:34:38
+1,我经常使用它,当我工作的事情非常的首选*垃圾收集器复杂的地方,双免费()会拼出灾难。 – 2009-03-03 04:58:41
这是正确的,它也是gcc项目正在使用的GC。 – none 2009-05-20 19:33:03