gpt4 book ai didi

swift - Realm 1.0 如何使用线程

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

我想在我的项目中使用该 Realm ,但我有一个非常复杂的过滤和排序。我必须按名称对列表进行排序,但该名称在其他类(class)中。

class CustomObject: Object
{
dynamic var objectId = 0
let objectLangs = List<ObjectLang>()
}

class ObjectLang: Object
{
dynamic var objectId = 0
dynamic var name = ""
}

当我有超过 130 行时,主线程非常慢并且会阻塞 UI。我尝试在后台线程中执行此操作,但是当我想要更新 UI 时,它被 Realm 崩溃了。那么完美的解决方案是什么呢?我该如何使用它?你能给我一个例子或教程吗?我已阅读指南。

最佳答案

如果在后台线程上更新 UI 时程序崩溃,则应在 Realm 任务完成后在主线程上更新 UI。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), {
let realm = try! Realm()

//do What you need

dispatch_async(dispatch_get_main_queue(), {
//updateUI()
})
})

关于swift - Realm 1.0 如何使用线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38047471/

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