我有两个同时具有相同用户ID的请求A和B。
每个请求的过程很简单,即检查状态列,该列指示请求是否已处理以及该值是否未处理,将值更新为已处理,然后继续。
由于请求A和B都具有相同的用户ID,因此它们将尝试读取和更新同一行。
我的预期行为是请求A和B中的任何一个都会首先更新状态列,从而阻止其余请求被处理。
我知道mysql实行行级锁定,但是两个请求同时到达时是否有机会先安全地读取status列然后进行更新?然后,两个请求都将读取状态为未处理,因此在最坏的情况下将继续处理。
任何见识将不胜感激。