我正在快速更新领域中的对象,但出现错误。
***由于未捕获的异常“ RLMException”而终止应用程序,原因:“从错误的线程访问了领域。”
我的代码:-
let realm = try! Realm()
let cont = Contact()
cont.notes = self.notee
cont.id = self.oneCont.id //i.e id of current object
cont.email = self.email
try! self.realm.write {
self.realm.add(cont,update:true)
}
答案 0 :(得分:0)
Realm的经验法则是在创建的同一线程上使用Realm实例。在您的代码示例中,您似乎创建了一个领域实例,但是稍后您使用self.realm
。您可能只需要使用刚创建的Realm实例。
答案 1 :(得分:0)
您拥有一个本地领域
let realm = try! Realm()
但是随后您要使用
来写类var域try! self.realm.write {
您应该将其更改为使用相同的本地域
let realm = try! Realm()
let cont = Contact()
cont.notes = self.notee
cont.id = self.oneCont.id //i.e id of current object
cont.email = self.email
try! realm.write {
realm.add(cont,update:true)
}