Condition条件变量允许一个或多个线程等待,直到它们被另一个线程通知。如果给出了lock参数而不是None,它必须是一个Lock或RLock对象,并且它被用作底层锁。否则,将创建一个新的RLock对象并将其用作底层锁。本质上就是用一个主锁,加上N个通知锁来实现等待。步骤原理是在lock1的加锁状态下创建通知锁,释放主锁,阻塞lock1.acquire(),相当于等待解锁lock1。解锁后,主锁等待结束,继续进行后续操作,释放主锁;派生信号量、事件

Condition条件变量允许一个或多个线程等待,直到它们被另一个线程通知。如果给出了lock参数而不是None,它必须是一个Lock或RLock对象,并且它被用作底层锁。否则,将创建一个新的RLock对象并将其用作底层锁。本质上就是用一个主锁,加上N个通知锁来实现等待。步骤原理是在lock1的加锁状态下创建通知锁,释放主锁,阻塞lock1.acquire(),相当于等待解锁lock1。解锁后,主锁等待结束,继续进行后续操作,释放主锁;派生信号量、事件