gpt4 book ai didi

Objective-C 从嵌套函数返回 (GCD)

转载 作者:行者123 更新时间:2023-11-30 15:52:52 26 4
gpt4 key购买 nike

我如何从嵌套的 GCD 调度调用中返回?

假设我有一个如下所示的方法:

- (void)foo {

dispatch_async(queue, ^{

if (flag) {
// I want out of here
return;
}

dispatch_sync(dispatch_get_main_queue(), ^{

if (flag) {
// I want out of here
return;
}
});
});
}

当我在里面时dispatch_sync函数和调用return;我认为这只会保留当前函数,因此我需要调用 return;再次来自 dispatch_async

最佳答案

是的,你的想法是正确的。每个 block 都是一个单独的函数,因此 return 只会从当前 block 返回。如果你想在dispatch_sync block 退出的情况下提前退出dispatch_async block ,那么你需要在dispatch_sync之后进行另一次检查并返回。

关于Objective-C 从嵌套函数返回 (GCD),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14075580/

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