Re:TheKitchenSync - A Tool Belt for iOS Concurrency
by mikeash on Tuesday May 14, 2013 @12:04PM
(#5705810)
Like I said, GCD has a heavy emphasis on performance. For example, a dispatch_sync will involve no cross-thread communication in the uncontended case, and the cost is comparable to taking a spinlock. A bit heavier, but not too much.
dispatch_async will necessarily be slower, but don't overestimate how much work is really going to happen in the cases where it matters.
Then again, if you can do things like background non-essential operations, then the higher-level benefits can probably outweigh that.