7-5条件变量:sleep会让出lock吗?

来源:7-5 线程同步之条件变量

慕码人154873

2020-05-22

当线程(producer)因为condition wait 而sleep的时候,是不是会自动让出l已经取到的lock? 因为生产者和消费者使用同一个锁。如果producer不让出,是否会造成consumer线程一直等待造成死锁?

写回答

2回答

咚咚呛

2020-05-22

对的,否则会造成死锁,这个你可以下来再仔细实践下,会得到和这里一样的结论。

1
1
慕码人154873
非常感谢!
2020-05-23
共1条回复

祖师爷的快乐你不懂

2021-10-20

老师说过 自旋锁在sleep时候会把持住cpu也就是不会放弃锁,既然老师没提到过互斥锁不会再sleep时候把持住cpu 那么互斥锁在sleep时候就不会把持住锁,而且现在的操作系统用的锁大多数是自旋锁,导致市面上很多人认为 线程在sleep时候 不会放弃锁

1
0

(新版)计算机基础,计算机组成原理+操作系统+网络

编程之前先学这门课,系统补足计算机基础知识,夯实编程地基

7739 学习 · 1580 问题

查看课程