CLH实现及图解代码
原文地址:http://whvixd.com/2020/05/14/CLH/
1. What?
Craig, Landin, and Hagersten 简称 CLH,CLH锁是一个自旋锁,以自旋的方式确保无饥饿性,提供先来先服务的公平性,即公平锁。
CLH锁也是一种基于链表的可扩展、高性能、公平的自旋锁,申请线程仅仅在本地变量上自旋,它不断轮询前驱的状态,假设发现前驱释放了锁就结束自旋。
2. Why?
CLH队列锁的优点是空间复杂度低,如果有n个线程去竞争一把锁,那么空间复杂度是O(n+1),n个.
原创
2020-05-18 14:50:35 ·
1113 阅读 ·
0 评论