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;
相关推荐
拾光Ծ8 分钟前
【MySQL】基础入门:库操库、数据表操作与数据类型详解
数据库·sql·mysql·数据类型·库操作·表操作
存在morning9 分钟前
【Flink SQL 学习笔记 三】维表关联:Lookup Join、Temporal Join、窗口 Join
sql·学习·flink
cspttty11 分钟前
哪些证书可以弥补学历不足
大数据·数据库·数据挖掘
Chasing__Dreams17 分钟前
向量数据库--Milvus--2--介绍
数据库·milvus
redfred24 分钟前
DBeaver 使用教程:开源免费数据库管理工具 100+ 数据库连接 SQL编辑器 ER图 AI生成SQL 全平台
数据库·sql·开源
zcmodeltech28 分钟前
垃圾发电厂沙盘模型控制系统设计与实现:多设备协同联动方案
java·大数据·数据库·人工智能·stm32·嵌入式硬件·制造
有续技术28 分钟前
工业网关接入 PLC,为什么要先整理点表?
运维·网络·数据库
山峰哥30 分钟前
数据库工程:Explain执行计划对比调优实战‌
大数据·数据库·sql·编辑器·深度优先
夜雪一千32 分钟前
MySQL Insert Intention Lock 插入意向锁是什么
数据库·mysql