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;
相关推荐
suoyue_zhan1 分钟前
GBase 8s V8.8 安装部署实践指南
前端·数据库·chrome
晨曦5432102 分钟前
数据库视图:数据安全与查询利器
数据库·sql·mysql
漂亮的小碎步丶13 分钟前
【3】Spring事务管理
java·数据库·spring
MACKEI21 分钟前
数据库操作性能优化方法文档
数据库·性能优化
赤龙绕月24 分钟前
SQLite NET
数据库·sqlite
方方怪31 分钟前
数据库 SQL 语句大全
数据库·sql·oracle
又是进步的一天36 分钟前
zabbix部署安装
数据库·redis·zabbix
正在走向自律43 分钟前
从Oracle到金仓KES:PL/SQL兼容性与高级JSON处理实战解析
数据库·sql·oracle·json·金仓数据库·电科金仓·兼容性挑战
cyhysr1 小时前
oracle的model子句让sql像excel一样灵活
数据库·sql·oracle
熊文豪1 小时前
电科金仓数据库如何支持Oracle风格的PL/SQL操作
数据库·电科金仓·kes