锁策略以及CAS和Synchronized的优化过程
全称Compare and swap ,字面意思:比较并交换",一个CAS涉及到以下操作:假设内存中的原数据V,旧的预期值A,需要修改的新值B比较A与V是否相等.(比较)如果相等,把B写入V (交换)返回操作是否成功两种典型的不是原子性的代码check and set (if 判定然后设定值)当多个线程同时对某个资源进行CAS操作,只能有一个线程操作成功,但是并不会阻塞其他线程,其他线程只会收到操作失败的信号CAS可以视为是一种乐观锁,(或者可以理解为CAS是乐观锁的一种实现方式)
原创
2023-04-15 17:19:38 ·
125 阅读 ·
0 评论