我的代码内存使用有问题,内存急剧增加,每小时3 GB,我需要大约80个小时进行计算。如何检查计算的每个部分的内存使用情况?
您可以在您认为有益的地方插入gc.collect()
。当然,如果您持有对内存的引用,它将不会被释放。此外,如果你在C中分配内存,那么你有责任释放它
Python
的普通内存处理功能做得很好,所以我只建议在您确定要删除对大量内存的引用并且释放速度不够快的情况下调用gc.collect()
。
至于应该把这些调用放在哪里,没有硬性规定,只需记住,只有未引用的内存才会被释放。