由于我的项目中的并发问题由于2个线程一起进行同时进行选择而发生,因此两者都接收到理想情况下不应发生的相同值。 选择一个值后,它应该执行更新,然后第二个线程应该选择更新的值。 使用DB2 我想过使用这种使用
的方法从最终表中选择数字(更新表名设置columnanme ="" 在哪里)
。 我的问题是,当其他线程进入选择值时,这种方法是否会锁定数据库,因为这是select中的更新?并解决我的并发问题。 要么 我在浏览并找到了另一种方法
更新表(.....)从等待的表中选择col 结果
这会选择等到第一个线程完成选择吗?
答案 0 :(得分:0)
你可以做的一件事是在一个读者更新之前避免多次读取相同的值:
这当然会阻止完整的表,这可能不是你想要的!
替代方法(相对标准,但更多涉及编程逻辑):
- 彼得·凡罗斯,
ABIS培训&咨询,
比利时鲁汶。