gpt4 book ai didi

ios - NSManagedObjectContext 的 performBlock 中的 dispatch_async

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:49:54 25 4
gpt4 key购买 nike

根据 WWDC 2012 视频“核心数据最佳实践”,dispatch_sync 应该用于在上下文的 performBlock 中运行某种回调,创建为一种 NSPrivateQueueConcurrencyType

这是为什么?

我可以使用 dispatch_async(dispatch_get_main_queue(), 0)... 在私有(private)队列上下文的 performBlock 中调用一些与 UI 相关的回调吗?

最佳答案

没有。 NSPrivateQueueConcurrencyType 管理它自己的内部队列,并且不喜欢你试图离开它的线程之一去做你想做的事(事实上,我相信当这种行为发生时它会抛出异常)。有几种方法可以处理这个问题,当然信号量是更可接受的设计模式以获得真正的“异步感觉”,但正如您所注意到的,dispatch_sync 通常是可行的方法。

关于ios - NSManagedObjectContext 的 performBlock 中的 dispatch_async,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13468705/

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