我對垃圾收集的工作方式感興趣。我已經讀過一些如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. 垃圾收集java
- 3. Java垃圾收集
- 4. Java垃圾收集
- 5. C#垃圾收集
- 6. GWT垃圾收集
- 7. DoctrineCommonCache垃圾收集?
- 8. 垃圾收集器
- 9. 垃圾收集測試失敗?
- 10. 垃圾收集器如何確定對象是否是垃圾?
- 11. 如何跟蹤垃圾收集對象
- 12. Android ART垃圾如何收集?
- 13. 如何禁用Java垃圾收集器?
- 14. 垃圾收集機制如何工作?
- 15. 垃圾收集器如何識別根
- 16. 如何配置.net垃圾收集器?
- 17. 如何觸發垃圾收集?
- 18. 如何分析JVM垃圾收集?
- 19. Redux垃圾收集如何工作?
- 20. Objective-C的垃圾收集
- 21. 延遲垃圾收集?
- 22. 數量的垃圾收集
- 23. 瞭解Actionscript垃圾收集
- 24. Android - 檢測垃圾收集
- 25. Renderscript和垃圾收集器
- 26. JavaScript垃圾收集暫停
- 27. Node.js的垃圾收集器
- 28. .NET垃圾收集器
- 29. 結構和垃圾收集
- 30. bash中的垃圾收集
我想補充,這被認爲是*如果你想保持內/ C的C++而不是使用虛擬機... – 2008-10-29 20:34:38
+1,我經常使用它,當我工作的事情非常的首選*垃圾收集器複雜的地方,雙免費()會拼出災難。 – 2009-03-03 04:58:41
這是正確的,它也是gcc項目正在使用的GC。 – none 2009-05-20 19:33:03