读取SQLite文档这里时,当进程想要写入SQLite数据库时,它将获得一个保留锁。然后,一旦进程准备好写入磁盘,它就会获得一个挂起的锁,在这个锁期间,任何新的进程都不能获得共享锁,但是允许现有的共享锁完成其业务。一旦剩余的共享锁清除,进程就可以写入。
However...when --当其他进程从该数据库读取时,我尝试编写一个数据库,我只得到一个立即的“错误: dataset被锁定”。
sqlite> insert into meta_models (model) values ("hello_world");
Error: database is locked为什么SQLite不执行我前面描述的等待共享锁清除的步骤?
发布于 2014-06-11 14:45:11
SQLite确实经历了这些步骤,但它在等待其余共享锁清除时超时。
您可以使用超时调整这个超时。
https://stackoverflow.com/questions/24165446
复制相似问题