我用泡菜在内存中装载一个大矩阵。第一次运行脚本时,加载整个对象需要花费大约14s的时间。相反,接下来的运行只需4s。该对象似乎被加载到内存中,而不是在执行后释放。这是正常的吗?垃圾收集器不应该在对象未被引用时立即释放它吗?
我用不同的文件尝试了不同的时间,结果总是一样的。
这是我用来测试所描述的行为的代码:
def load():
with open('batch-0', 'rb') as read:
data = pickle.load(read)
if __name__ == '__main__':
cPr