Ios 从不同线程/会话中更新Swift中的领域对象

Ios 从不同线程/会话中更新Swift中的领域对象,ios,swift,realm,Ios,Swift,Realm,保存领域对象后,我将执行以下操作 try! self.realm.write{ article.imageUri = path try! self.realm.commitWrite() } 虽然我仍然在模拟器的同一会话中可以看到该值,但在重新启动或重新运行应用程序后,上面代码段中的更新值不会显示,但其余数据都在那里 此更新是在使用Alamofire result获取数据后完成的。首先,当您使用块调用write时,不需要指定try!块内的self.realm.c

保存领域对象后,我将执行以下操作

 try! self.realm.write{
       article.imageUri = path
       try! self.realm.commitWrite()
 }
虽然我仍然在模拟器的同一会话中可以看到该值,但在重新启动或重新运行应用程序后,上面代码段中的更新值不会显示,但其余数据都在那里


此更新是在使用Alamofire result获取数据后完成的。首先,当您使用块调用write时,不需要指定
try!块内的self.realm.commitWrite()
。根据Realm的示例自动为您调用:

try! realm.write {
  realm.add(myDog)
}
以前调用过
self.realm.beginWrite()
时,只需调用
self.realm.commitWrite()


其次,很难说清楚为什么您可能看不到更多上下文的数据更新。这篇文章是什么?设置在哪里?如何加载/存储领域?您是否在运行之间删除模拟器应用程序?这里有很多变量。

首先,当您使用块调用write时,不需要指定
try!块内的self.realm.commitWrite()
。根据Realm的示例自动为您调用:

try! realm.write {
  realm.add(myDog)
}
以前调用过
self.realm.beginWrite()
时,只需调用
self.realm.commitWrite()


其次,很难说清楚为什么您可能看不到更多上下文的数据更新。这篇文章是什么?设置在哪里?如何加载/存储领域?您是否在运行之间删除模拟器应用程序?这里有很多变量。

我是通过提交来完成的,因为我面临这个问题,所以我是通过提交来完成的,因为我面临这个问题,所以我是通过提交来完成的,文章是一个ream对象,使用NSSessions的Alamofire结果块中的数据bing集,如前所述,当数据在更新后加载时,它工作正常,只有在我关闭模拟器、重新启动或重新运行应用程序后,我似乎没有得到它。感谢您的帮助我已经完成了提交,因为我遇到了这个问题,所以我完成了提交,因为我遇到了这个问题,所以我完成了提交,文章是一个ream对象,使用NSSessions的Alamofire结果块内的数据bing集,如前所述,当更新后加载数据时,它工作正常,只有在我关闭模拟器、重新启动或重新运行应用程序后,我似乎才明白。谢谢你的帮助