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;
相关推荐
dishugj4 分钟前
psql-客户端工具日常使用命令整理
数据库·postgresql
m0_737539377 分钟前
数据库主从复制和读写分离
数据库·oracle
y = xⁿ14 分钟前
MySQL学习日记:关于MVCC及一些八股总结
数据库·学习·mysql
m0_7375393730 分钟前
SQL语言续2
数据库·sql
云边有个稻草人38 分钟前
KingbaseES 高可用集群故障恢复实践与运维落地
数据库·数据安全·高可用集群·故障恢复·国产数据库·kes·运维实践
要做一个小太阳1 小时前
Consul SD 常见标签
运维·数据库·consul
十五年专注C++开发1 小时前
HDF5: 大数据的 “超级容器“
大数据·数据库·c++·hdf5
森叶1 小时前
2026 年 Google SEO 核心机制整合&两类落地页设计指导
数据库
web3.08889991 小时前
tb关键词API接口——解锁独一无二的商品
java·数据库·https