在用户线程中实现互斥锁等待

时间:2014-06-04 07:02:15

标签: synchronization locking mute user-thread

如何在用户线程中实现等待锁定?

假设线程A正在尝试获取另一个线程B使用的锁。在A意识到锁被其他线程锁定后,他到底做了什么? 它是如何阻止它自己执行的?谁停下来后跑?

我在内核线程中读到,线程可以调用一个挂起它并将其放入等待队列的系统调用。但是在用户线程中,系统不知道线程,那么是否应该有用户管理的队列?

1 个答案:

答案 0 :(得分:0)

用户线程通过系统调用检查锁的可用性,因此决定在系统级别进行,并且正在执行的代码具有必要的权限,以便在必要时将线程放入等待队列。