【发布时间】:2013-02-25 15:02:05
【问题描述】:
我在 sqlite 中注意到了这种行为。当我重新使用游标对象时,任务管理器中的工作集内存不断增加,直到我的程序抛出内存不足异常。
我重构了代码,这样每次查询时,我都会打开到 sqlite 文件的连接,查询我想要的内容,然后关闭连接。
不知何故,后者似乎并不那么需要内存。它不会增加超过某个点。
我对我的 sqlite 数据库所做的只是对一个表进行简单的选择(其中包含两个聚合)。
这是一种我们可以通过某种方式控制的行为吗?我想重用我的光标对象,但不希望内存被吃掉......
【问题讨论】:
-
SQLite 自己的缓存具有固定大小(通常为 2 MB)。这听起来好像您的某些对象没有正确清理。
标签: python sqlite ironpython