如何在进行并发操作时保证线程安全

并发场景下,数据库是否有相关机制保证线程安全,如果没有,如何保证线程安全。

HarmonyOS
2024-09-19 11:12:11
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

1.关于prefereences的线程安全:prefereences并没有使用数据库,而是使用内存进行存储,不存在连接,本身就是线程安全的,内部有锁来控制同步,单进程内是没问题的。

2.关于kv数据库:内部自带读写锁,在多线程模式下无需考虑线程安全问题 。

3.rdb底层基于sqlite,应用使用时c++层会单独创建线程,初始创建4个读连接和1个写连接,线程获取到空闲读连接时,即可进行读取。当没有空闲读连接且有空闲写连接时,会将写连接当做读连接来使用。数据库本身是本地数据库,很少涉及并发。如果业务有并发的话可以考虑使用线程池。

分享
微博
QQ
微信
回复
2024-09-19 17:15:03
相关问题
ArkTs多线程方案如何保证线程安全
2581浏览 • 2回复 待解决
应该如何设计大量线程并发方案
2028浏览 • 1回复 待解决
如何在鸿蒙系统中实现多线程操作?
246浏览 • 1回复 待解决
TaskPool线程如何进行数据库操作
251浏览 • 1回复 待解决
HarmonyOS 多线程并发相关问题
255浏览 • 1回复 待解决