【发布时间】:2012-03-22 03:52:38
【问题描述】:
如果我在调度队列中使用dispatch_semaphore_wait,如果dispatch_semaphore_wait 上阻塞了许多线程,这是否会使我的线程调度队列饿死?
parallelDownloadsSemaphore = dispatch_semaphore_create(4);
[...]
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{
dispatch_semaphore_wait([self parallelDownloadsSemaphore], DISPATCH_TIME_FOREVER);
// perform lengthy download
dispatch_semaphore_signal([self parallelDownloadsSemaphore]);
});
【问题讨论】:
标签: objective-c grand-central-dispatch