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;
相关推荐
Arva .2 小时前
深分页与游标
数据库·oracle
idolao2 小时前
MySQL 5.7 安装教程:详细步骤+自定义安装+命令行客户端配置(Windows版)
数据库·windows·mysql
20年编程老鸟java+ai全栈2 小时前
mysql、pg、oracel数据库迁移避坑指南
数据库·mysql
Rsun045513 小时前
Redis中实现访问量计数
数据库·redis·缓存
天空属于哈夫克33 小时前
自动化素材中枢:实现云端文件与外部群消息的异步同步方案
数据库·oracle
Navicat中国4 小时前
Navicat Premium Lite 正式登录鸿蒙应用市场
数据库·华为·harmonyos·navicat
Yvonne爱编码4 小时前
数据库---Day 1 数据库基础
数据库·mysql·oracle
Ricky_Theseus4 小时前
数据库关系代数 - 连接操作
linux·数据库·算法
FL4m3Y4n4 小时前
MySQL索引原理与SQL优化
android·sql·mysql
2301_793804694 小时前
定时任务专家:Python Schedule库使用指南
jvm·数据库·python