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;
相关推荐
计算机毕设VX:Fegn0895几秒前
计算机毕业设计|基于springboot + vue博物馆展览与服务一体化系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
龙亘川9 分钟前
【课程5.3】功能设计:城管核心指标与设施分布(处置效率、违建数量等指标定义)
数据库·oracle·智慧城市·一网统管ai平台
ybb_ymm15 分钟前
@Async修饰不生效
java·前端·数据库
Psycho_MrZhang23 分钟前
MySQL/PgSQL设计思想总结
数据库·mysql
风吹落叶花飘荡25 分钟前
将mysql数据库的内容备份至阿里云 oss归档存储
数据库·mysql·阿里云
数据大魔方1 小时前
【期货量化入门】期权交易入门:从零开始学期权量化(TqSdk完整教程)
数据库·python·mysql·算法·区块链·程序员创富
虫小宝1 小时前
导购APP高可用数据库设计:主从分离与分库分表在返利系统中的应用
android·数据库
fie88891 小时前
基于蚁群算法求解带时间窗的车辆路径问题
数据库·人工智能·算法
memgLIFE1 小时前
mybatis数据库查询
数据库·oracle·mybatis
闲人不梦卿1 小时前
数据库系统概念
数据库