技术栈
stl 库
zhangzhangkeji
1 个月前
c++20
·
stl 库
<mutex>注释 11:重新思考与猜测、补充锁的睡眠与唤醒机制,结合 linux0.11 操作系统代码的辅助(上)
(46)问题的起源:++ 因为上面的内核代码,我们编写多线程代码时,对手里的家伙事不那么自信。但我们知道,多线程在竞争锁时,若得不到锁,会进入睡眠,并会在被唤醒后重新尝试得到锁,一直到得到了锁,线程才会继续执行下面的代码。这种线程的睡眠与唤醒机制。参考 linux 0.11 里的进程睡眠与唤醒机制。给出 linux 0.11 的源代码。