【问题标题】:Is it safe to maintain an LMDB handle to the same file from every thread?从每个线程维护同一个文件的 LMDB 句柄是否安全?
【发布时间】:2022-10-03 09:42:17
【问题描述】:

我正在构建一个使用 LMDB 作为数据库的多线程服务器。它使用多个线程来高效地处理高请求量。

在每个线程上为 .mdb 文件维护一个 LMDB 实例并同时访问数据库是否安全,或者在线程之间使用互斥锁共享单个实例是否更好?

此外,如果我选择在每个线程上打开一次数据库,LMDB 是否会自行处理写锁定,或者我是否需要手动维护互斥锁来锁定写操作?

在此先感谢您的帮助!

    标签: multithreading thread-safety mutex lmdb


    【解决方案1】:

    单个 lmdb 实例在所有线程的整个应用程序中使用

    Lmdb 将处理所有锁定 - 您不需要执行互斥逻辑

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-03
      • 1970-01-01
      • 2013-06-04
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多