我在使用Python发布字典内存时遇到问题。 我运行以下检查并遵循进程内存使用情况:
a = dict()
for i in xrange(1000000):
a[i] = i
for i in xrange(1000000):
del a[i]
gc.collect()
运行这些行后的内存使用率比以前高很多。 我该如何释放所有内存? 请注意我不想删除字典本身。
感谢。
答案 0 :(得分:0)
简单地删除字典中的所有元素不会从内存中删除字典。 Python使用引用计数技术。因此,只有当对象的引用计数降为0时,它才会准备好进行垃圾回收。因此,您最好的选择是删除引用a
以引用实际字典,如此
a = None
如果字典没有其他引用,a
引用的字典将被自动垃圾收集。