gpt4 book ai didi

ios - "Realm accessed from incorrect thread"在收到 HTTP 响应后更改对象

转载 作者:行者123 更新时间:2023-11-28 16:14:53 24 4
gpt4 key购买 nike

我正在使用 NSURLSession 发出服务器请求,当收到响应时,我使用以下方法在主线程上更改了 UI:

dispatch_async(dispatch_get_main_queue())

但我目前遇到错误:

libc++abi.dylib: terminating with uncaught exception of type realm::IncorrectThreadException: Realm accessed from incorrect thread.

我已经尝试在主线程和后台线程上进行更改(保存对象),但我总是遇到相同的错误。有什么方法可以知道 Realm 正在访问哪个线程?

编辑:

在main_thread执行保存和查询后,错误不再出现,但是现在,如果我打印对象,值是正确的,但是当我运行时,所有值都是空的,<uninitialized>

最佳答案

Realm 的 IncorrectThreadException 告诉您您正在从创建它的线程以外的线程访问 Realm 对象。从抛出此异常的点查找堆栈将显示您正在访问哪个对象。 C++ exception breakpoint in Xcode可能有助于此目的。希望从您的代码正在执行的操作中可以清楚对象应该在哪个线程上执行。

关于ios - "Realm accessed from incorrect thread"在收到 HTTP 响应后更改对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39216094/

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