当前位置: 代码迷 >> 综合 >> sqlite database is locked
  详细解决方案

sqlite database is locked

热度:0   发布时间:2023-12-18 11:45:16.0

        简单的记录一下,“增删改不能同时操作sqlite,查询是支持并发”

       由于 sqlite 增删改是独占,当有一个进程执行时其他的操作提交就会出现 “database is locked”,其时就是sqlite的操作的独占的,只有查询的时候时并发的,所以用sqlite做为数据持久化时,只能保证同时不操作sqlite(除了查询),这样就不能用多线程对sqlite操作,或者说用多线程的话必须要用同步锁,保证每次只有一个增删改的操作。

       场景:

      1、不存在并发增删改的场景

      2、多线程使用同步锁保证每次执行一个

      3、增删改 操作放在MQ,同一个进程分批执行 增删改 操作

    

  相关解决方案