使用 Haskell 的 HDBC,我可以跨多个线程使用单个 SQLite 连接吗?



如果我想使用Haskell的HDBC跨多个线程从SQLite数据库查询(读取),我可以使用单个连接,还是每个线程都应该有自己的连接?谢谢。

我搜索了jdbc -sqlite代码,发现了这个注释:

处理更改计数的逻辑:查看之前的总更改在查询之后。如果它们不同,那么看看局部的变化。(本地更改计数器似乎没有更新,除非真的根据文档,运行一个做出更改的查询)

这在线程方面是OK的,因为SQLite不支持使用给定的DBH在多个线程中。

官方Sqlite文档有一整页关于这个主题

FAQ说:

(5)可以多个应用程序或多个实例相同应用程序访问一个数据库文件在同一时间?

多个进程可以同时打开同一个数据库。多个进程可以同时执行SELECT。但只有一个进程可以在任意时刻对数据库进行更改然而,时间。

此信息将排除您的两种方法。也许您可以为此编写一些测试,以显示该信息是错误的。

相关内容

  • 没有找到相关文章

最新更新