NSConditionLock 一直不理解条件锁,捂脸。 是自己把简单的事情想复杂了。 条件锁只是在互斥锁的基础上添加了条件。 生产者消费者模型就是经典的示例: 消费者获得锁,但是队列中没有消息,此时不满足条件,释放锁,进入休眠队列。 生产者获取锁,生产消息后,发送信号,唤醒休眠线程,释放锁。