后端岗位面试题更新 2026-08-05

互斥锁可以自旋吗?在什么阻塞条件下,Linux 新源码实现了互斥锁的自旋?

联想后端开发互联网/IT技术原理方案权衡问题排查Linux

考察说明

考察对互斥锁阻塞机制的理解以及 Linux 内核新版本自旋优化方案

回答思路

  1. 清晰区分互斥锁的睡眠阻塞与自旋锁忙等待的区别
  2. 说明互斥锁默认在无法获取时让线程睡眠,唤醒有开销
  3. 准确描述 Linux 新源码中互斥锁在特定条件下采用自旋的机制
  4. 指出这种自旋通常限定在单核或特定短临界区场景,避免无谓自旋