SQLite中的并发访问

Concurrent access in SQLite

本文关键字:访问 并发 SQLite      更新时间:2023-10-16

SQLite可以管理并发访问吗?我将SQLite与C/C++一起使用?如果它不支持这一点。有什么建议可以支持SQLite中的并发访问吗?

是的,正如文档中所述:

SQLite 3.0.0版引入了一种新的锁定和日志机制旨在提高SQLite版本2的并发性,并减少作家的饥饿问题。新机制还允许原子涉及多个数据库文件的事务的提交。

和:

SQLite使用POSIX咨询锁在Unix上实现锁定。在…上Windows使用LockFile()、LockFileEx()和UnlockFile()系统电话。

这里:

SQLite使用文件系统锁来确保只有一个进程和数据库连接正在尝试一次修改数据库。这个文件系统锁定机制在VFS层中实现每个操作系统都不同。SQLite依赖于此执行是正确的。如果出现问题,两个或两个以上进程能够同时写入相同的数据库文件,可能导致严重损坏。