HarmonyOS Preferences的同步方法会造成UI卡顿么?

dataPreferences.getPreferencesSync(context, options); 
dataPreferences.putSync(key, value); 
preferences.getSync(key, defValue);
  • 1.
  • 2.
  • 3.

在开发中,更推荐使用同步方法还是异步方法?使用同步方法有什么弊端?

1.初始化Preferences时使用getPreferencesSync方法,是不是需要把文件从设备读取到内存?应用后期文件比较大,读取会慢么?

2.那么getSync是否是直接从内存中读取?其实不会有什么耗时?

3.putSync方法同理。调用flush的时候,才是异步存储到了SD卡?

使用异步方法,是否由于是Promise的原因,Promise切换到其他IO线程执行了?然后在通过消息发送回主线程,导致获取一个值要几毫秒?

HarmonyOS
2024-11-01 12:15:08
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
superinsect

​Preferences当前性能较优,正常情况下不会造成卡顿。

当前更推荐同步方法,相比异步,同步更快(异步频繁调用可能出现排队等情况)

1、getPreferencesSync方法是需要把文件从设备读取到内存,文件不是特别大的话,读取不会有太大影响。

2、getSync是直接从内存中读取,基本不会有什么耗时

3、putSync方法同理。调用flush的时候,才会持久化到文件中。

异步方法Promise会切换到其他线程执行,然后在通过消息发送回主线程。​

分享
微博
QQ
微信
回复
2024-11-01 15:02:36
相关问题
HarmonyOS 手机系统升级后ui变得
1079浏览 • 1回复 待解决
鸿蒙开发中UI界面怎么解决?
295浏览 • 0回复 待解决
鸿蒙优化,如何检测线上
404浏览 • 0回复 待解决
HarmonyOS 页面滑动
843浏览 • 1回复 待解决
HarmonyOS 横竖屏翻转
772浏览 • 1回复 待解决
HarmonyOS List嵌套waterflow滑动
1020浏览 • 1回复 待解决
HarmonyOS 页面嵌套滑动时
787浏览 • 1回复 待解决
优化还有哪些方案
354浏览 • 0回复 待解决
HarmonyOS WebView加载H5
938浏览 • 1回复 待解决
HarmonyOS LazyForEach多层级数据性能
1105浏览 • 1回复 待解决
关于启动慢问题首帧分析
1258浏览 • 1回复 待解决
Web嵌套滑动怎么办?
1110浏览 • 1回复 待解决