我刚读在统一的文档是
Unity的垃圾收集 - 使用Boehm GC算法 - 是非代数和非压缩的."非世代"意味着GC在执行收集传递时必须扫描整个堆,因此其性能因堆扩展而降低."非压缩"意味着内存中的对象不会被重新定位以便关闭对象之间的间隙.
有没有人知道或假设为什么Unity使用标准的.Net GC进行中止和压缩?我做了一些测试,我真的很惊讶甚至来自LOH的对象都在第0代,可能是GC试图用小物体收集它们.
.net c# mono garbage-collection unity-game-engine
.net ×1
c# ×1
garbage-collection ×1
mono ×1
unity-game-engine ×1