Condition

A condition variable allows one or more threads to wait until they are
notified by another thread.
If the lock argument is given and not None, it must be a Lock or RLock
object, and it is used as the underlying lock. Otherwise, a new RLock object
is created and used as the underlying lock.
  • 实质利用一个主锁, 加上N告诉锁来实现
  • wait 步骤原理

    • 创立告诉锁 锁定状态的lock1
    • 开释主锁
    • 梗塞lock1.acquire(),相当如期待解锁
    • lock1 解锁后, 锁定主锁
    • wait 完结,继续执行后续操作,并开释主锁;
  • 衍生出 Semaphore, Event