当一个线程调用Lock对象的acquire()方法获得锁时,这把锁就进入“locked”状态。因为每次只有一个线程1可以获得锁,所以如果此时另一个线程2试图获得这个锁,该线程2就会变为“blo同步阻塞状态。直到拥有锁的线程1调用锁的release()方法释放锁之后,该锁进入“unlocked”状态。线程调度程序从处于同步阻塞状态的线程中选择一个来获得锁
(根据一个申请队列来的),
(申请队列顺序一般谁抢到谁排在前面)
并使得该线程进入运行(running)状态。
为的是资源同步共享。
当一个线程调用Lock对象的acquire()方法获得锁时,这把锁就进入“locked”状态。因为每次只有一个线程1可以获得锁,所以如果此时另一个线程2试图获得这个锁,该线程2就会变为“blo同步阻塞状态。直到拥有锁的线程1调用锁的release()方法释放锁之后,该锁进入“unlocked”状态。线程调度程序从处于同步阻塞状态的线程中选择一个来获得锁
(根据一个申请队列来的),
(申请队列顺序一般谁抢到谁排在前面)
并使得该线程进入运行(running)状态。
为的是资源同步共享。
本文标题:同步阻塞
本文链接:https://www.haomeiwen.com/subject/fouvfxtx.html
网友评论