为什么cpython在引发MemoryError之前不调用gc.collect()?

时间:2017-04-25 09:48:07

标签: python garbage-collection allocation cpython

我注意到即使在几乎一半的系统内存标记为gc但标记对象的数量低于gc阈值的情况下,cpython也会引发MemoryError。在这些情况下,手动调用gc.collect()并重试引发原始MemoryError的操作会成功,并且在此过程中会回收大量RAM。

有没有理由在引发MemoryError之前cpython没有尝试gc.collect()?这样做是否有缺点?

0 个答案:

没有答案