CAS

  这里讲的CAS 并不是CAS 的单点登录包。要了解单点登录的话,可以另外百度一下。

  Compare And Set

  意思很明显,先比较,后设置

  为什么要先比较呢,就是因为在多线程的情况下,每次请求先后不一,这也就是乐观锁的概念。

  一个update语句你就知道了:

  

  old_num = 先获取现有的库存数量 

  new_num = #old_num - 1

  update stock set stock_num = #new_num where product_id=#product_id and stock_num = #old_num

  看到没有,先对应比较一下old_num是否对应上

  其实,现在很多公司设计库表结构时候,除了create_by,create_time,update_by,update_time之外,还会多一个version字段,设计理念是一样的!

posted on 2020-03-17 14:19  Jason_LZP  阅读(112)  评论(0)    收藏  举报