Нашей команде очень нужна помощь в решении следующей проблемы, с которой мы столкнулись, поскольку она не позволяет нам отлаживать часть кода внутри блока dispatch_async.
Надеюсь, что я получу помощь или предложения о том, что делать дальше.
Проблема, с которой мы столкнулись, выглядит следующим образом:
Недавно мы столкнулись со странной проблемой, когда в Xcode 6 мы не можем сломаться в блоке dispatch_async.
- (void)viewDidLoad {
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
dispatch_async(queue, ^{
BOOL setRtn = TRUE; //<- break point is set here but never break
//call to function
BOOL setFn = some_function();
});
}
- (BOOL) some_function()
{
BOOL test = YES; <- break point set here, breakpoint break!
return test;
}
Что происходит, так это то, что когда мы устанавливаем точку останова в любой строке блока dispatch_async, код никогда не ломается, и точка останова никогда не работает.
Однако, если мы установим точку останова внутри функции, вызываемой блоком dispatch_async, точка останова сработает!
Кто-нибудь еще сталкивается с той же проблемой?
Мы используем Xcode 6.1 и работаем над IOS8.1.
Пожалуйста, помогите, уже несколько дней схожу с ума, пытаясь решить эту проблему.