标签: sqlite transactions
如果我有多个可以在数据库上运行查询的线程,如果步骤在事务中,sqlite3_step是否会返回sqlite忙?
答案 0 :(得分:0)
sqlite3_step可能需要获取数据库上的写锁定,并且这是不可能的,因为某些其他线程的读锁定未被释放。
sqlite3_step
为了防止这种死锁,打算写入数据库的事务应该以BEGIN IMMEDIATE而不是BEGIN开始。