sqlite 是如何保证多进程读写安全的?

比如一个 http 服务往往是多进程的,当需要读写 sqlite 数据库的时候,怎么保证多进程安全呢?

如果是单进程多线程很简单,直接用多线程锁就好了。但是如果是多进程呢?文件锁吗?

阅读 5.5k
1 个回答
in order to serialize COMMIT processing, SQLite takes a lock on the database as part of each COMMIT command and releases it before returning. At most one writer may hold this lock at any one time. If a writer cannot obtain the lock, it uses SQLite's busy-handler to pause and retry for a while:

来自官方文档:https://www.sqlite.org/cgi/sr...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题