美文网首页
java并发编程学习笔记之cpu实现原子操作

java并发编程学习笔记之cpu实现原子操作

作者: 一人_e0fb | 来源:发表于2018-04-27 15:22 被阅读10次

    两种实现方式:

    总线锁定:通过锁定总线,也就是锁定后,总线数据的传输将被阻塞

    缓存锁定:通过缓存一致性实现原子操作,缓存一致性常用MESI控制协议实现

    MESI控制协议:

    MESI是四种状态,用来表明缓存中数据的状态。

    M(modify):表示缓存中数据修改,与内存中不一致,只能有一个缓存拥有这个状态,且其他拥有该数据的缓存为i状态

    E(exclusive): 表示别的缓存中没有该数据,只有该缓存独占,当别的缓存从内存中读取后,变为s状态,只能有一个缓存拥有这个状态

    S(shared): 表示除了该缓存,其他缓存也拥有该数据,当该状态存在时,不可能存在其他所有状态。

    I(invalid): 表示失效状态,当有另一个缓存行状态为M状态时该缓存变为此状态。

    相关文章

      网友评论

          本文标题:java并发编程学习笔记之cpu实现原子操作

          本文链接:https://www.haomeiwen.com/subject/pggblftx.html