gpt4 book ai didi

ios - Realm 在后台线程上获取对象并传递给主线程

转载 作者:技术小花猫 更新时间:2023-10-29 11:04:57 25 4
gpt4 key购买 nike

我想在后台线程上获取大量对象,但是我无法将它们传递给主线程,因为我得到了

*** Terminating app due to uncaught exception 'RLMException', reason: 'Realm accessed from incorrect thread'

获取代码

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){

//Background Thread
RLMRealm * realm = [RLMRealm defaultRealm];
self.allObjectsRLMResult = [MyClass allObjectsInRealm:realm];

dispatch_async(dispatch_get_main_queue(), ^(void){

// use self.allObjects and do stuff on main thread

});

});

如何在后台执行提取并将对象传递给主线程,从而将性能影响降到最低

我可以获取主键,然后在主线程上重新获取,但这与直接获取它们的性能相同(可能甚至更慢)

最佳答案

这里是来自 Realm 的 Joe。目前,您所描述的(获取主键)是最好的方法。我们意识到这一点并一直在研究线程切换解决方案,但目前这将是您获取对象的最佳方式。

关于ios - Realm 在后台线程上获取对象并传递给主线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32478560/

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