Я запускаю этот код
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
NSLog(@"Main Thread? %d", [NSThread isMainThread]);
// non-trivial non-UI code here
});
NSLog
указывает, что я нахожусь в основном потоке, но... мое впечатление, что нетривиальный не-пользовательский код работает намного быстрее, если я использую dispatch_sync
(в отличие от ничего).
Если он работает в основном потоке, может ли он быть быстрее?