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;
相关推荐
Elastic 中国社区官方博客3 小时前
如何在不同版本的 Elasticsearch 之间以及集群之间迁移数据
大数据·数据库·elasticsearch·搜索引擎·全文检索·logstash
qq_366086224 小时前
union all几个常见问题及其解决方案
数据库
搞不懂语言的程序员6 小时前
备忘录模式深度解析与实战案例
数据库·python·备忘录模式
手揽回忆怎么睡8 小时前
mongodb学习
数据库·学习·mongodb
LL1681998 小时前
SSM考研助手管理系统
java·服务器·开发语言·数据库·学习
胡萝卜糊了Ohh8 小时前
利用IDEA开发Spark-SQL
sql·spark·intellij-idea
veminhe11 小时前
Node.js 数据库 CRUD 项目示例
数据库·node.js
HX科技11 小时前
树莓派_利用Ubuntu搭建gitlab
数据库·ubuntu·gitlab
pursue.dreams11 小时前
Windows 下 MongoDB ZIP 版本安装指南
数据库·windows·mongodb
煤烦恼11 小时前
Spark-SQL核心编程(二)
大数据·sql·spark