CAS算法
2021-05-24 09:44:08 31 举报
CAS算法逻辑
作者其他创作
大纲/内容
可以进行报错或者自旋操作
并发去更新主内存的值
假设线程二抢占到资源
再次自旋
进行CAS算法,主内存V=B=3
主内存V更新为B的值等于2
进行CAS算法比较A与V的值是否相等
同步读取
线程二
更新成功
B = 2
可以设置自旋次数自旋操作会不断更新V的值直到达到次数
A = 1
两个值相等
B = 3
A = 0
更新失败,因为在高并发场景下,可能会有其他线程抢占到资源,将V值再次更新
假设线程一抢占到资源
线程一
在线程栈空间上
初始值V=0(在堆内存空间上)
0 条评论
回复 删除
下一页