gpt4 book ai didi

ios - 只有一个上下文的核心数据栈用 NSPrivateQueueConcurrencyType 初始化

转载 作者:行者123 更新时间:2023-11-28 22:30:50 28 4
gpt4 key购买 nike

我正在开发一个需要多次异步下载并将其内容保存到核心数据实体的应用程序。其中一个下载量很大,并且注意到在创建/写入托管对象上下文时 UI 被阻止。我的研究让我阅读了并发核心数据设置,并开始实现其中之一。但是我遇到了问题并花了很多时间来纠正问题。

在继续之前,我正在考虑使用 NSPrivateQueueConcurrencyType 简单地设置一个 MOC。我读到的都没有提到这样做。这样我就可以选择在后台执行 MOC 操作,或者像往常一样只使用主线程,同时维护单个 MOC。

这是一个好方法吗?如果不是,它有什么问题?我怀疑这是不是正确的方法,因为如果是这样,NSPrivateQueueConcurrencyType 将主导 NSMainQueueConcurrencyType,并且没有理由使用后者。

最佳答案

为后台任务使用 NSPrivateQueueConcurrencyType MOC 没有任何问题。

但是您可能仍然需要一个 NSMainQueueConcurrencyType MOC。来自documentation :

The context is associated with the main queue, and as such is tied into the application’s event loop, but it is otherwise similar to a private queue-based context. You use this queue type for contexts linked to controllers and UI objects that are required to be used only on the main thread.

例如,对于获取的结果 Controller ,您可以使用NSMainQueueConcurrencyType MOC.

关于ios - 只有一个上下文的核心数据栈用 NSPrivateQueueConcurrencyType 初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17507089/

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