当线程1进行了加锁,而线程2加入了等待队列,此时如果线程1全部完成了自己的业务逻辑,接下来要释放锁,那么,线程1在释放锁的时候,会唤醒等待队列里面的线程,然后等待队列中的线程2,再次尝试获取锁,一些列的操作逻辑,获取锁成功,修改state=1, 设置加锁线程=线程2等等,依次执行下去
当线程1进行了加锁,而线程2加入了等待队列,此时如果线程1全部完成了自己的业务逻辑,接下来要释放锁,那么,线程1在释放锁的时候,会唤醒等待队列里面的线程,然后等待队列中的线程2,再次尝试获取锁,一些列的操作逻辑,获取锁成功,修改state=1, 设置加锁线程=线程2等等,依次执行下去