我正在使用SQLite数据库编写C#应用程序,有时我会在输出日志中收到消息:Database Locked(5)
。我不希望这种情况发生,我知道对我的数据库执行的多个操作给了我这个例外。
问题:
有没有办法查看SQLiteDatabase是否忙于处理其他查询?
答案 0 :(得分:2)
如果您正在创建多线程应用程序,拥有您所要求的知识将无法解决任何问题。它们可能会使它们看起来不那么频繁,但偶尔会出现与以前相同的问题。
为什么呢?因为从你问“你被锁定了吗?”的那一刻起。在你说“在那种情况下,让我锁定你做某事”的那一刻,另一个线程可能已经跳入并锁定它。
除非你得到超时,否则我会处理例外并确定每种情况下做什么。
此外,由于SQLite本质上是单用户(而不是用户,而不是用户,如“使用数据库的东西”)数据库,您可能会认为这不会成为错误的工具。工作