我正在寻找详细描述Python垃圾回收机制的文档。
我对每个步骤中做了什么感兴趣。这3个集合中有哪些对象?每个步骤中删除了哪些对象类型?为查找引用循环使用了什么算法?
背景:我正在实现一些需要在短时间内完成的搜索。当垃圾回收器开始收集最老一代时,它比其他情况下要“慢得多”。 它花费的时间比搜索所期望的时间更长。我正在寻找如何预测它何时将回收最老一代以及需要多长时间。
使用 get_count()
和 get_threshold()
可以轻松预测何时将收集最老一代。 这也可以通过 set_threshold()
进行操作。 但我不知道是否更好强制执行 collect()
还是等待计划收集。