1
Почему не использовать SD "серийные очереди" или "synchrolock", SD использовать как это, dispatch_barrier_asyncПочему SDWebImage'downloader использует параллельную очередь для сохранения обратных вызовов?
_barrierQueue=dispatch_queue_create("com.hackemist.SDWebImageDownloaderBarrierQueue", DISPATCH_QUEUE_CONCURRENT);
dispatch_barrier_sync(self.barrierQueue, ^{
....
});
dispatch_barrier_async(sself.barrierQueue, ^{
[sself.URLCallbacks removeObjectForKey:url];
});
dispatch_sync(sself.barrierQueue, ^{
callbacksForURL = [sself.URLCallbacks[url] copy];
});