HarmonyOS 两个异步函数同时操作rdbstore的数据竞争问题处理
两个异步函数同时操作rdbstore的数据竞争问题处理,该如何避免?
私信场景,两个接口分别获取商品信息和联系人头像昵称,分别在两个异步函数发起请求,之后读取数据库,并更新信息,但是测试发现数据有竞争现象,导致数据被覆盖。
func1() {
let user = await MsgCenterContactDB.getContactByUid(uid);
user.name = xxx;
await MsgCenterContactDB.insertOrUpdate(user);
}
func2() {
let user = await MsgCenterContactDB.getContactByUid(uid);
user.headPic = xxx;
await MsgCenterContactDB.insertOrUpdate(user);
}
这两个函数都是异步的,导致数据产生了错乱,最终headPic或者name为空
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
关于数据库的两个问题。
2479浏览 • 1回复 待解决
HarmonyOS 两个同级的组件问题
547浏览 • 1回复 待解决
HarmonyOS 横纵滚动两个scroll怎么实现同时滚动
656浏览 • 1回复 待解决
HarmonyOS 是否支持一键同时拉起两个应用,并且怎么设置让两个应用分屏显示?
97浏览 • 1回复 待解决
HarmonyOS 定义组件TabList,在一个页面同时使用两个时出现问题
604浏览 • 1回复 待解决
HarmonyOS 两个网页间的数据如何同步
55浏览 • 1回复 待解决
关于Image组件的两个问题
523浏览 • 1回复 待解决
android 手机能否同时连接两个蓝牙设备
4009浏览 • 1回复 待解决
两个设备控制相关问题
9109浏览 • 3回复 已解决
HarmonyOS 两个枚举类型之间转换问题
255浏览 • 1回复 待解决
pinch事件两个手指拖动时,获取的两个手指前后变化差值有问题
913浏览 • 1回复 待解决
HarmonyOS 两个感叹号!!的判断使用问题
130浏览 • 1回复 待解决
HarmonyOS Text控件处理\n\n两个换行,间距小
404浏览 • 1回复 待解决
HarmonyOS scroll组件可以同时设置垂直和水平两个方向滑动吗
110浏览 • 1回复 待解决
HarmonyOS 关于两个权限的区别
211浏览 • 1回复 待解决
一个项目里有两个网站, 怎么让数据在这两个网站系统之间互通使用呢?
2281浏览 • 1回复 待解决
HarmonyOS 如何比较两个日期的大小?
438浏览 • 1回复 待解决
HarmonyOS 两个日期怎么比较
157浏览 • 1回复 待解决
HarmonyOS 如何合并两个对象
166浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何处理组件间的手势竞争问题?
187浏览 • 1回复 待解决
HarmonyOS Column容器内子两个组件间存在的间隙问题
446浏览 • 1回复 待解决
HarmonyOS Stack布局中,两个重叠的组件点击事件问题
757浏览 • 1回复 待解决
两个Scroll互相监听彼此的滑动-卡顿问题
2550浏览 • 1回复 待解决
打算合并两个数据库里面不同格式的两个表,有什么简单办法没有?
2997浏览 • 1回复 待解决
OceanBase同时具备哪两类场景的处理能力?
3478浏览 • 1回复 待解决
关于此问题,官方有约束,同一时间只能有一个写操作,参考链接:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/data-persistence-by-rdb-store-V5
请确认是否使用API是10? 如果是的话,可通过指定冲突解决模式,来解决此问题,参考链接:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-data-relationalstore-V5#update10