社区
C++ 语言
帖子详情
多线程读写 SQlite 数据库的问题
u011640071
2013-10-28 04:43:51
多线程读写 SQlite 数据库的问题
多个线程对同一个SQLite数据库进行读写操作,请问如何做比较好?
当程序突然中止,线程被强制杀掉(SQLite数据库正在进行读写操作),导致SQLite数据库被锁,无法进行相关的操作,请问,如何做比较好?
请大家赐教! 谢谢!
...全文
225
5
打赏
收藏
多线程读写 SQlite 数据库的问题
多线程读写 SQlite 数据库的问题 多个线程对同一个SQLite数据库进行读写操作,请问如何做比较好? 当程序突然中止,线程被强制杀掉(SQLite数据库正在进行读写操作),导致SQLite数据库被锁,无法进行相关的操作,请问,如何做比较好? 请大家赐教! 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
u011640071
2013-11-04
打赏
举报
回复
谢谢大家!!!!
u011640071
2013-10-28
打赏
举报
回复
引用 3 楼 qq120848369 的回复:
建议直接分库, 不要加锁操作.
请赐教,多个线程对同意哥数据库的同一个表 进行操作的。
qq120848369
2013-10-28
打赏
举报
回复
建议直接分库, 不要加锁操作.
u011640071
2013-10-28
打赏
举报
回复
引用 1 楼 mydeardingxiaoli 的回复:
不要强制杀掉线程,利用同步等待操作完成后自然退出
有时候系统重启,通过任务管理器强制终止,这些都没法控制,那么SQlite数据库就被锁定了,对于这样,我如何处理才能让数据库不锁。
逸萌
2013-10-28
打赏
举报
回复
多个线程对同一个SQLite数据库进行读写操作,请问如何做比较好?线程做到同步就行 当程序突然中止,线程被强制杀掉(SQLite数据库正在进行读写操作),导致SQLite数据库被锁,无法进行相关的操作,请问,如何做比较好? 不要强制杀掉线程,利用同步等待操作完成后自然退出
C#
多线程
读写
sqlite
多线程
读写
sqlite
数据库
,同步锁,计时测试
读写
性能,
Android例子源码解决
多线程
读写
sqlite
数据库
锁定
问题
SQLite
实质上是将数据写入一个文件,通常情况下,在应用的包名下面都能找到xxx.db的文件,拥有root权限的手机,可以通过adb shell,看到data/data/packagename/databases/xxx.db这样的文件。我们可以得知
SQLite
是文件级别的锁:多个线程可以同时读,但是同时只能有一个线程写。Android提供了
Sqlite
OpenHelper类,加入Java的锁机制以便调用。如果
多线程
同时
读写
(这里的指不同的线程用使用的是不同的Helper实例),后面的就会遇到android.database.
sqlite
.
SQLite
Exception: database is locked这样的异常。对于这样的
问题
,解决的办法就是keep single
sqlite
connection,保持单个
Sqlite
OpenHelper实例,同时对所有
数据库
操作的方法添加synchronized关键字。完美解决
sqlite
的 database locked 或者是 error 5: database locked
问题
qt
Sqlite
(Qt对多个
sqlite
数据库
的操作以及文件
读写
).zip
Qt自带了
sqlite
的驱动,也有各种文件的
读写
操作,用起来很是方便,这里仅仅是做了一个简单的封装,方便多个
数据库
和多个文件的操作。
QT中
sqlite
多线程
操作4个注意
问题
总结了一下Qt中
sqlite
多线程
操作遇到的几个
问题
,希望能对有需要的朋友一点帮助
C#解决
SQlite
并发异常
问题
的方法(使用
读写
锁)
本文实例讲述了C#解决
SQlite
并发异常
问题
的方法。分享给大家供大家参考,具体如下: 使用C#访问
sqlite
时,常会遇到
多线程
并发导致
SQLITE
数据库
损坏的
问题
。
SQLite
是文件级别的
数据库
,其锁也是文件级别的:多个线程可以同时读,但是同时只能有一个线程写。Android提供了
Sqlite
OpenHelper类,加入Java的锁机制以便调用。但在C#中未提供类似功能。 作者利用
读写
锁(ReaderWriterLock),达到了
多线程
安全访问的目标。 using System; using System.Collections.Generic; using System.Text;
C++ 语言
64,648
社区成员
250,503
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章