数据库是 PostgreSQL ,程序一共有三个线程在操作数据库,两个线程不断执行 Insert 和 Update 操作,一个线程不断执行 Select 操作。
如果操作比较频繁,就会出现 Insert 和 Select 都失败的情况。
搜索了一番发现是因为没有事务隔离导致的冲突(对,我对数据库基本一无所知 (*´Д`*)
参考了 事务隔离,对涉及 Insert 和 Update 的操作开头和结尾处分别加入了 BEGIN 和 COMMIT ,问题就没有了。
现在想问的是,我这种解决方法是正确的吗?