sqlite3多线程操作问题

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

两种方式

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

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

开启wal通过如下语句

sql 复制代码
pragma synchronous=NORMAL;
pragma journal_mode=WAL;
pragma wal_autocheckpoint=5000;
相关推荐
会飞的大可12 小时前
Redis 竞品与替代方案选型可行性分析报告
数据库·redis·缓存
周杰伦的稻香12 小时前
PostgreSQL基础命令
数据库·postgresql
先做个垃圾出来………12 小时前
JSON序列化问题
数据库·json
我科绝伦(Huanhuan Zhou)12 小时前
InnoDB Undo Log 深度解析:从原理到实现(基于 MySQL 8.0)
数据库·mysql
jackiehome13 小时前
SQL数据库无法操作,日志文件损坏修复
数据库·sql·oracle
荒川之神13 小时前
ORACLE导入导出实验
数据库·oracle
执笔为剑13 小时前
利用逻辑备份修复误操作的库
数据库·kingbase
程序员夏末13 小时前
【MySQL | 第三篇】 MySQL索引详解
数据库·mysql
leoZ23113 小时前
innodb理解
数据库
NaMM CHIN14 小时前
SQL sever数据导入导出实验
数据库·sql·oracle