实现线程加锁的原理:当信号计数大于0时,每条进来的线程dispatch_semaphore_wait会使计数减1,直到减到为0(加锁),变为0后其他的线程将进不来,处于等待状态;执行完任务的线程dispatch_semaphore_signal释放信号,使计数加1(解锁),如此循环下去
实现线程加锁的原理:当信号计数大于0时,每条进来的线程dispatch_semaphore_wait会使计数减1,直到减到为0(加锁),变为0后其他的线程将进不来,处于等待状态;执行完任务的线程dispatch_semaphore_signal释放信号,使计数加1(解锁),如此循环下去
本文标题:关于GCD信号量:dispatch_semaphore
本文链接:https://www.haomeiwen.com/subject/fdojdctx.html
网友评论