技术栈

sqlite3多线程操作问题

kgduu2023-08-14 21:07

在项目中使用sqlite3,有时会报database is locked

两种方式

1、多线程读,多线程写,只使用共同一个数据库连接,即使用同一个SQLiteHelper连接,调用sqlite3_busy_timeout

2、多线程读,单线程写,每个线程使用各自独立的数据库连接,但是需要开启wal模式,以开启数据库连接池

开启wal通过如下语句

sql 复制代码
pragma synchronous=NORMAL;
pragma journal_mode=WAL;
pragma wal_autocheckpoint=5000;
上一篇:python的virtualenv虚拟环境无法激活activate
下一篇:笙默考试管理系统-MyExamTest----codemirror(2)
相关推荐
MatrixOrigin
1 小时前
数据库没有死,只是范式变了
数据库·oracle
羊小蜜.
3 小时前
Mysql 13: 触发器全解——创建、查看、使用与注意事项
数据库·mysql·触发器
阿里加多
3 小时前
第 1 章:Go 并发编程概述
java·开发语言·数据库·spring·golang
ShiJiuD666888999
3 小时前
Mysql 进阶
数据库·mysql
一 乐
3 小时前
物流信息管理|基于springboot + vue物流信息管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·物流信息管理系统
Rick1993
4 小时前
Redis 分布式锁:核心使用场景
数据库·redis·分布式
身如柳絮随风扬
5 小时前
Redis如何实现高效插入大量数据
数据库·redis·缓存
Dream of maid
5 小时前
Mysql(3)运算符
数据库·mysql·adb
热门推荐
012026年4月技术前沿:AI大模型爆发、智能体革命与量子安全新纪元02GitHub 镜像站点03一周AI热点速览(2026.03.31-04.06):GPT-6曝光、谷歌开源Gemma 4、资本狂飙与模型军备竞赛04基于 Docker 部署 Hermes Agent 并接入飞书机器人的完整指南05GPT-6核心能力解析及与现有主流大模型对比06免费!不限量!用opencode接入英伟达(NVIDIA)大模型,轻松打造你的 AI 编程助手07零成本!Ollama本地部署国产大模型全指南(支持Kimi-K2.5/GLM-5/Qwen,新手秒上手)08从限购到畅通:GLM-5.1 Coding Plan接入攻略09CodeBuddy与WorkBuddy深度对比:腾讯两款AI工具差异及实操指南10LLM Wiki:让大模型替你打理知识库的完整指南