gpt4 book ai didi

ios - Xcode 断点在 dispatch_async block 内不起作用

转载 作者:可可西里 更新时间:2023-11-01 04:05:41 25 4
gpt4 key购买 nike

我们的团队非常需要一些帮助来解决我们面临的以下问题,因为它阻止我们调试 dispatch_async block 中的某些代码。

希望我能得到一些关于下一步该做什么的帮助或建议。

我们遇到的问题如下:

我们最近遇到了一个奇怪的问题,在 Xcode 6 中,我们无法在 dispatch_async block 内中断。

- (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 block 的任何行中设置断点时,代码永远不会中断,断点也不会起作用。

但是,如果我们在 dispatch_async block 调用的函数中设置断点,则断点有效!

有没有人遇到同样的问题?

我们正在使用 Xcode 6.1 并且正在开发 IOS8.1

请帮忙,几天来一直在疯狂地尝试解决这个问题。

最佳答案

原来是因为一个 3rd 方框架 New Relic。删除对 New Relic 框架的引用后,我们可以进入 dispatch_async block 。

因此,对于任何开发具有新遗留插件的项目的开发人员,您可以暂时删除对该插件的引用,并在您的调试 ID 完成后将其添加回来。

我们花了几天的时间才弄明白,希望这条信息对大家有帮助。

关于ios - Xcode 断点在 dispatch_async block 内不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26254447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com