在数据库繁忙时提交

时间:2019-07-10 15:32:07

标签: python c++ database sqlite concurrency

我有两个脚本,一个在python中,一个在C ++中,用于在SQLite的同一表中读写。

我有两个有关如何处理并发的问题:

  1. 在编写过程中,如果表当前处于繁忙状态(正在编写其他内容),则C ++中的sqlite_exec()返回错误代码(5)。看起来在python中这是不可用的,所以我想知道:在写另一个脚本的同时,python commit()会发生什么?在C ++中,它将继续其操作。有没有办法知道commit()不能按预期工作?

  2. 在C ++中,我(效率极低)的解决方法是继续检查sqlite_exec()的结果,如果返回5(忙),我再次写。有没有一种更有效的方法可以避免在UPDATE返回正确结果之前在循环中检查结果?

0 个答案:

没有答案