В типичном dispatch_async
исполнения:Как проверить статус очереди dispatch_async?
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
// ...
dispatch_async(dispatch_get_main_queue(), ^{
// ...
});
});
Чтобы ограничить только есть только блок работает:
if (_loadingFromServer) return;
_loadingFromServer = YES;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
// ...
dispatch_async(dispatch_get_main_queue(), ^{
// ...
_loadingFromServer = NO;
});
});
Есть ли способ, чтобы проверить, где блок асинхронного работает, без с помощью _loadingFromServer
флаг?
dispatch_queue_set_specific
полезный в этом случае?