sqlite事务中的sqlite3命令是否安全?

时间:2014-07-14 23:43:11

标签: sqlite transactions

如果我有多个可以在数据库上运行查询的线程,如果步骤在事务中,sqlite3_step是否会返回sqlite忙?

1 个答案:

答案 0 :(得分:0)

sqlite3_step可能需要获取数据库上的写锁定,并且这是不可能的,因为某些其他线程的读锁定未被释放。

为了防止这种死锁,打算写入数据库的事务应该以BEGIN IMMEDIATE而不是BEGIN开始。