cpu-architecture - 与 CAS (compare-and-swap) 相比,LL/SC 的优势是什么?

标签 cpu-architecture cas compare-and-swap load-link-store-conditional

LL/SC 与 CAS(比较和交换)在计算机体系结构上相比有什么优势?我认为 LL/SC 可以在多核系统中解决活锁问题,也可以解决 ABA 问题,但 CAS 不行。与 CAS 相比,我找不到 LL/SC 的任何优势。谁能告诉我?

最佳答案

由于没有人回答,LL/SC 不会遇到 ABA 问题,因为如果 LL 引用的地址被修改,条件存储将失败。此外,它不能活锁,因为一个或多个 LL/SC 对失败意味着另一个成功。 CAS 也可能更昂贵,因为它可能需要刷新无效队列。

关于cpu-architecture - 与 CAS (compare-and-swap) 相比,LL/SC 的优势是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32097742/

相关文章:

C代码不使用sizeof确定CPU的大小

branch - 为什么 MIPS BLT 指令不在硬件中实现?

linux-kernel - 处理器流水线状态保存

x86 - AVX512 比较和交换

cpu-architecture - 目标文件体系结构是否独立?

java - 在服务验证请求的 GET 响应中返回附加参数或用户属性

spring - 为 CAS 客户端使用 Spring Security 时出现 401 错误

java - CAS - Pac4J - SSLHandshakeException

java - 尽管不使用锁定,但比较和设置如何工作