Concurrency 抢占锁持有者调度

Concurrency 抢占锁持有者调度,concurrency,operating-system,mutex,scheduling,Concurrency,Operating System,Mutex,Scheduling,线程T1成功锁定互斥锁M,然后被抢占。 线程T2试图锁定互斥锁M,但还不能。 这两个线程具有相同的优先级 现代操作系统线程调度程序如何处理这个问题:T1是立即允许恢复,还是根本没有保证?取决于O/S实现。而进程X所持有的资源可能会被OS释放,以分配给其他一些进程。操作系统还可以让进程X自愿放弃这些资源。另外,一些互斥锁如果已经锁定,则无法锁定。因此线程B可能需要等待。很难回答你的问题。在太监带领我们走上黑暗之路之前的日子里,操作系统通常有通用的锁管理器,可以检测您描述的情况(甚至检测和解决死锁)

线程T1成功锁定互斥锁M,然后被抢占。 线程T2试图锁定互斥锁M,但还不能。 这两个线程具有相同的优先级


现代操作系统线程调度程序如何处理这个问题:T1是立即允许恢复,还是根本没有保证?

取决于O/S实现。而进程X所持有的资源可能会被OS释放,以分配给其他一些进程。操作系统还可以让进程X自愿放弃这些资源。另外,一些互斥锁如果已经锁定,则无法锁定。因此线程B可能需要等待。很难回答你的问题。在太监带领我们走上黑暗之路之前的日子里,操作系统通常有通用的锁管理器,可以检测您描述的情况(甚至检测和解决死锁)。