WAL 模式是为 N 个读者和一个作者指定的。作者的身份可以互换吗?例如,我有 N 个编写器和一个额外的互斥体。每个写入者都必须获得这个互斥锁才能写入,所以永远不会有两个写入者同时写入。这可能吗?如果是这样,为什么这不是 SQLite 的一部分,因为对我来说,它似乎是 WAL 模式的自然扩展。
最佳答案
在 WAL 模式下,不可能有多个活跃的写入者。 但是,多个编写器尝试写入是可能的。 这种冲突的处理方式与回滚日志模式完全相同,即第一个写入者锁定数据库,其他人必须等待。
关于c++ - 如果我为多个编写器使用额外的互斥锁,我可以在 SQLite3 中使用 WAL 模式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30846095/