先占个坑

1 定义

2 lock-free 与 lockless

3 lock-free 的数据结构

4 实现原理

5 思考与启发

5.1 可借鉴的思想

  1. 足够小的临界区:这意味着哪怕直接使用 mutex,只要保持临界区够小,一样可以达到相同效果
  2. 减少上下文切换:使得逻辑尽量可以原地执行

5.2 不适合的场景

  1. 并发量较大时,自旋失败的可能性会大幅增加,cpu 浪费会比较严重。如果此时系统还有别的任务待完成,这些任务的响应时间可能会增加