有关cas的问题

CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。

上面这是cas的意思,但这样做的意义何在?找了好多cas的资料,都是讲cas的意思,但真不知道为什么要这样做,比较什么新旧值,,,

fenkapian
浏览 1196回答 1
1回答

一凡

CAS是由CPU实现的一个原子性操作,不需要锁来对内存阻塞同步,效率上要高很多很多。当然,如果程序的竞争非常多(大量冲突),CAS冲突太多,效率也不好,用锁可能更合适。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java