sqlite - 内存中的sqlite数据库是否需要vacuum?
问题描述
我使用内存中的 sqlite 数据库在多个线程之间对一些东西进行排队,因此我们有很多写入、读取和删除。但是数据库中的大小一次不会超过几 KB。现在有些客户在使用较长时间后抱怨内存使用情况,我想知道 sqlite 的内存数据库是否也受到碎片的影响?是否也需要 VACUUM 内存数据库?
这个数据库被多个线程使用,我不能为一些 VACUUM 锁定所有线程。还是所有连接都只是等到 VACUUM 完成然后照常返回?当我从我的线程启动 VACUUM 时,如果另一个线程正在执行事务,会发生什么?
旁注:我已经在我的程序中检查了内存泄漏,但这是我要考虑的另一个选项,因为 valgrind 目前没有发现任何问题。而且这样的 sqlite 存储内存使用当然不是传统方式的内存泄漏。
解决方案
推荐阅读
- c# - 如何在查询中引用表单元素的值?C# MSSQL
- python - Python + 谷歌表 | 如何更新特定单元格
- python - 该库未安装
- javascript - 如何使用 JavaScript 检查是否为共享点在线列表启用了评级?
- c# - 如何使用 AvaloniaUI 在 ComboBox 中动态加载项目
- css - 在选定日期为反应日期添加半径(airBnB)
- apache-spark - 通过 Spark.submit 但不是 Jupyter-notebook 运行 pyspark 代码的问题
- angular - Jhipster实体如何在页面上使用
- r - R Studio 获取前 5 个值、后 5 个值等向量的平均值
- javascript - 浏览器后退按钮在 MVC 中提供“确认表单重新提交”