Welcome everyone

CAS的一些局限性

java 汪明鑫 90浏览 0评论

都说乐观锁好,使用简单,性能好,那有什么局限性呢?

请求越多,更改的并发量越大,势必使很多请求持有的值都是旧值

要么丢失变更直接放弃,如果是业务层面写操作,直接影响业务

或者循环重试,这样又会有更多的失败,带来更久的自旋,浪费CPU资源

重则拖垮整个系统

 

拿 java.util.concurrent.atomic.AtomicInteger 举例

 

如果CAS更新失败,会一直自旋

因此CAS不适用于竞争特别激烈的场景

 

转载请注明:汪明鑫的个人博客 » CAS的一些局限性

喜欢 (0)

说点什么

您将是第一位评论人!

提醒
avatar
wpDiscuz