【发布时间】:2018-01-26 14:27:44
【问题描述】:
应用通过许多异步 API 调用从服务器获取数据。当接收到数据时,它会被处理并存储到 Realm 中。显然,当写入发生在同一时间时,beginWriteTransaction 会使应用程序崩溃,因为 Realm 已经处于写入事务中。
这里最好的方法是什么?将所有写入放入串行调度队列?
【问题讨论】:
-
不要在没有
commit()的情况下打电话给beginWriteTransaction() -
@EpicPandaForce 我在向 Realm 写入数据的每个块的末尾调用
commitWriteTransaction。 -
@EpicPandaForce 我刚刚阅读了你关于 Realm 的文章,我发现我使用了
beginWriteTransaction和commitWriteTransaction的愚蠢方式。但是即使使用transactionWithBlock,我仍然需要一些异步方法来避免由于重叠事务而导致的崩溃,对吧?
标签: ios objective-c realm