0
実オブジェクトの追加/更新に親切にお手伝いします 私はユーザークラスを保存して更新したいと思います。 ユーザークラスはクライアントクラス、 で構成されます。クライアントクラスは、アバタープロパティとルームリストで構成されます。 問題は、Clientクラスのアバタープロパティとルームのリストがフェッチされ、異なるクロージャで同時にRealmにプッシュされるため、「Realmはすでに書き込みトランザクション中です。」というエラーに直面しています。異なるスレッドのRealmSwift更新オブジェクト
func fetchRooms() {
roomsDelegate?.contactRooms(entityID: entityID,
success: {rooms in
self.addRooms(rooms: rooms)
},
fail: { error in
print (error)
})
}
func addRooms(rooms: [VMRoom]?) {
if let r = rooms {
do{
try realm?.write {
realm?.add(r, update: true)
self.rooms.append(objectsIn: r)
} }
catch let e {
print(e.localizedDescription)
}
}
}
func getAvatarURL() {
do{
try realm?.write {
avatarURL = avatarDelegate?.contactAvatarURL(eExtention: eExtention)
} }
catch let e {
print(e.localizedDescription)
}
}