面试真题

Go · 中等 · 英伟达

mutex底层原理是什么?

中等 Go 🎤 英伟达
参考答案
结论:Mutex 底层依赖原子操作和等待队列实现互斥。以 Go sync.Mutex 为例:内部 state 字段(原子整型)记录锁状态,包含 locked、woken、starving 标志。加锁时先 CAS 尝试置位,成功则获锁;失败则短暂自旋(多核且锁持有时间短)或调用 runtime_Semacquire 休眠入等待队列。解锁时清除 locked 并唤醒一个等待者(正常模式竞争,饥饿模式直接移交)。此外还有读写锁、自旋优化等。
题目整理自公开面经,答案由校招宝自研生成,仅供参考