Realm的 RLMResults
是一个自动更新的容器。通常,自动更新是一件很了不起的事情,但是我正在为特定的应用程序而苦苦挣扎:
我正在将模型对象数组发送到服务器,如果发送成功,则将它们从Realm中删除。由于这可以同时发生,因此每个模型都具有currentlyProcessing
属性。我将objectsWhere()
与谓词一起使用来查询未处理的对象,将它们设置为处理中,然后旨在删除这些相同的对象。由于RLMResults容器是自动更新的,因此原始unprocessedObjects
RLMResults为空,因此删除该特定集合并不容易。
有什么办法可以关闭自动更新吗?还是制作RLMResults
的不变副本?
最佳答案
目前,无法获取“冻结”的RLMResults
,而无法获取support is forthcoming。最好的选择是将结果中的对象复制到数组中。