CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。上面这是cas的意思,但这样做的意义何在?找了好多cas的资料,都是讲cas的意思,但真不知道为什么要这样做,比较什么新旧值,,,
1 回答
一凡
TA贡献43条经验 获得超8个赞
CAS是由CPU实现的一个原子性操作,不需要锁来对内存阻塞同步,效率上要高很多很多。
当然,如果程序的竞争非常多(大量冲突),CAS冲突太多,效率也不好,用锁可能更合适。
添加回答
举报
0/150
提交
取消