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

Synchronization 在用户线程中实现互斥等待,synchronization,locking,mute,user-thread,Synchronization,Locking,Mute,User Thread,如何在用户线程中实现等待锁 假设线程A正在尝试A获取另一个线程B使用的锁。在A意识到锁被另一个线程锁定后,他具体做什么? 它如何停止自己的执行?谁在他停下来后跑 我了解到,在内核线程中,线程可以调用挂起它的系统调用,并将其放入等待队列。但是在用户线程中,系统不知道线程,因此是否应该有一个由用户管理的队列?用户线程通过系统调用检查锁的可用性,因此在系统级别做出决定,并且正在执行的代码具有必要的特权,可以在必要时将线程放入等待队列

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

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


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

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