关注
76.CAS是硬件实现还是软件实现:比较当前工作内存中的值和主内存中的值,如果相同则执行规定操作,否则继续比较直到主内存和工作内存中的值一致为止。它是一条CPU并发原语;它的功能是判断内存某个位置的值是否为预期值,如果是则更改为新的值,这个过程是原子的。
CAS并发原语体现在java语言中就是sun.misc.Unsafe类中的各个方法。调用UnSafe类中的CAS方法,JVM会帮我们实现出CAS汇编指令。这是一种完全依赖于硬件的功能,通过它实现了原子操作。再此强调,由于CAS是一种系统原语,原语属于操作系统用语范畴,是由若干条指令组成的,用于完成某个功能的一个过程,并且原语的执行是连续的,在执行过程中不允许被中断,也就是说CAS是一条CPU的原子指令,不会造成所谓的数据不一致问题。
CAS应用
CAS有3个操作数,内存值V,旧的预期值A,要修改的更新值B。
当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 简历上写了AI项目,怎么才能拉开差距?6232
- 2... 我用一场重病,换来了与大厂的和解6166
- 3... 不会AI Coding真的不行吗?4593
- 4... 字节跳动-中国交易与广告面经3020
- 5... Claude Code 压缩机制曝光,这波真的有点猛啊!2021
- 6... 战报分享——2026年前端社招找工作感想1591
- 7... 字节跳动-Agent开发实习生 一面(45分钟):1357
- 8... 学AI+测试力竭的感觉谁懂,WDF越学感觉自己越菜!1206
- 9... 百度Agent前端一面 超级轻松面1121
- 10... 一家我看不上的初创公司,老板愿意给我开9k实习工资,甚至亲手写了2000多字的offer邮件给我891
正在热议
更多
# 我的实习日记 #
4177921次浏览 33336人参与
# 京东美团大战,你怎么看? #
192626次浏览 925人参与
# 第3届现代汽车Code Faster急速编程挑战赛 #
37327次浏览 547人参与
# 牛客AI文生图 #
27348次浏览 276人参与
# 城市生存手册 #
10496次浏览 133人参与
# 实习最晚的一次下班是几点 #
41150次浏览 180人参与
# 你的房租占工资的比例是多少? #
105618次浏览 915人参与
# 入职第一天,你准备什么时候下班 #
130228次浏览 533人参与
# 如果人间有后悔药 #
15653次浏览 314人参与
# 入职第五天,你被拉进了几个工作群 #
33943次浏览 85人参与
# 柠檬微趣笔试 #
6128次浏览 68人参与
# 双非本科的出路是什么? #
238969次浏览 1672人参与
# 网易游戏笔试 #
18877次浏览 107人参与
# 哪些公司对双非友好 #
245923次浏览 1293人参与
# 秋招感动瞬间 #
129345次浏览 572人参与
# 你觉得面试是靠实力还是靠运气 #
37972次浏览 416人参与
# 你现在的工作,是“成长”还是“消耗”? #
34276次浏览 259人参与
# 用一句话形容你的团队氛围 #
54482次浏览 316人参与
# 听到哪句话就代表面试稳了or挂了? #
280950次浏览 1802人参与
# 你以为的实习VS真实的实习 #
148774次浏览 769人参与
# 卷__卷不过你们,只能卷__了 #
71375次浏览 807人参与