当前位置:  开发笔记 > 数据库 > 正文

sqlite数据库连接/锁定问题

如何解决《sqlite数据库连接/锁定问题》经验,为你挑选了0个好方法。

我正在使用sqlite 实现基于文件的队列(请参阅我之前的问题).我在后台运行以下线程:

    thread-1将内存结构清空到"queue"表中(插入"queue"表).

    thread-1读取和"处理""队列"表每5到10秒运行一次

    thread-3 - 很少运行并从"队列"表中清除不再需要的旧数据,并且还运行真空,因此数据库文件的大小仍然很小.

现在我想要的行为是每个线程获得它需要的任何锁(如果可能的话,等待超时),然后完成事务.如果线程不同时运行也没关系 - 重要的是事务一旦开始就不会因"锁定"错误(例如"数据库被锁定")而失败.

我查看了事务文档,但似乎没有"超时"工具(我正在使用JDBC).可以在连接中将超时设置为大量吗?

我能想到的一个解决方案(未经验证)是拥有最多1个连接的连接池.因此,一次只能连接一个线程,因此我们不应该看到任何锁定错误.还有更好的方法吗?

感谢名单!

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有