后台使用Realm写入时出现RUNNINGBOARD 0xdead10cc错误求助
后台运行时Realm写入操作间歇性触发RUNNINGBOARD 0xdead10cc错误问题排查
我的App在后台运行时,调用Realm数据库写入操作会间歇性出现RUNNINGBOARD 0xdead10cc错误,怀疑该错误与数据库写入时的文件锁有关。曾尝试在写入块中添加sleep,测试阶段未复现该错误。
相关代码片段
更新数据库的主函数:
func update(completion: @escaping () -> ()) { let dispatchGroup = DispatchGroup() array1 = Array(Set(self.arrayData)) for element in array1 { dispatchGroup.enter() element.updateRealmModel { dispatchGroup.leave() } } dispatchGroup.notify(queue: .main) { completion() } }
元素对应的更新函数:
func updateRealmModel(completion: @escaping(() -> Void)) { let primaryKey = self.id DispatchQueue.global(qos: .userInitiated).async { let realm = try! Realm() if let user = realm.object(ofType: Mytype, forPrimaryKey: primaryKey) { do { try realm.write { user.boolField = false } } catch let error { debugPrint(error) } } completion() } }
诉求
- 希望有人帮忙复现并解决该错误
- 询问Realm在后台执行写入操作是否存在已知问题
- 期待相关调试和修复建议
内容的提问来源于stack exchange,提问作者MSm
相关产品推荐
相关产品推荐

