31.锁|NSConditionLock
一、 NSConditionLock
let conditionLock = NSConditionLock(condition: 2)
let queue1 = DispatchQueue.global(qos: .unspecified)
let queue2 = DispatchQueue.global(qos: .background)
let queue3 = DispatchQueue.global(qos: .default)
queue1.async {
conditionLock.lock(whenCondition: 1)
print("1")
conditionLock.unlock(withCondition: 0)
}
queue2.async {
conditionLock.lock(whenCondition: 2)
print("2")
conditionLock.unlock(withCondition: 1)
}
queue3.async {
conditionLock.lock()
print("3")
conditionLock.unlock()
}1.1 API 简单介绍
1.2 分析

参考
Last updated