这是我发现与垃圾收集器相关的,例如,每个Vector()用户数据对象暂时创建,直到收集垃圾。
我知道Python使用引用计数,这就是为什么它不需要像Luas GC这样的任何巨大的性能进行步骤。
>为什么Lua不使用引用计数来摆脱垃圾?
简单的例子:双向列表。每个节点都有一个指向下一个节点的指针 – 并且本身指向下一个节点。如果您只是取消引用列表本身并且希望它被收集,您只是泄漏了整个列表 – 没有一个节点的引用计数为零,因此它们将保持对方的活动。使用引用计数垃圾收集器,每当您有循环对象时,您基本上都需要将其视为非托管对象,并在完成后自行明确处理。
请注意,除了引用计数之外,Python还使用了适当的垃圾回收器。