基于CAS实现自旋锁

Posted simp00

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于CAS实现自旋锁相关的知识,希望对你有一定的参考价值。


#include<aomic>

class SpinLock
public:
    SpinLock():flag_(false)
    void lock()
      bool except = false;
      while(!flag_.compare_exchange_weak(expect,true))
        
        expect = false;
      

    

void unlock()

  flag_.store(false);

private:
std::atmoic<bool>flag_;
  ;

以上是关于基于CAS实现自旋锁的主要内容,如果未能解决你的问题,请参考以下文章

深入理解CAS (自旋锁)

并发编程--CAS自旋锁

Java中的自旋锁,手动实现一个自旋锁

Java中的自旋锁,手动实现一个自旋锁

用Java原子变量的CAS方法实现一个自旋锁

CAS机制与自旋锁