使用CAS实现无锁的SkipList
感谢同事【付哲】发布此文。
无锁
并发环境下最常用的同步手段是互斥锁和读写锁,例如pthread_mutex和pthread_readwrite_lock,常用的范式为:
void ConcurrencyOperation() { mutex.lock(); // do something mutex.unlock(); }
这种方法的优点是:
- 编程模型简单,如果小心控制上锁顺序,一般来说不会有死锁的问题;
- 可以通过调节锁的粒度来调节性能。 阅读全文