多线程原理知识点总结2(非阻塞式同步知识点)

一、非阻塞式同步原理:基于冲突检测的乐观并发策略,通俗地讲,就是先进行操作,如果没有其它线程争用共享数据,那操作

        就成功了;如果共享数据争用,产生了冲突,再采取其它的补偿措施(常见的措施是,不断重试,直到成功为止)。


二、乐观并发策略需要“硬件指令集的发展”,常用的指令包括:

        1.测试并设置(test-and-set),2.获取并增加(fecth-and-increment),3.交换(swap),

        4.比较并交换(compare-and-swap,即CAS,应用较多,着重了解),5.加载链接/条件存储(LL/SC)

三、CAS:需要3个操作数,变量的内存地址v,旧的预期值  A,新值B;当且仅当V 和旧的预期值相符时,才会用新值B更新V,否则不执行,但是无论执行与否,都会返回V的旧值。这个过程就是一个原子操作。

----以上都是抄的书里的概念,感觉重点难懂的地方记录下来,慢慢理解,但是个人感觉这个原子操作和redis的 setnx命令有些类似

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值