当前位置: 首页 > news >正文

dede 企业网站模板下载石家庄谷歌seo

dede 企业网站模板下载,石家庄谷歌seo,wordpress 自动发表,广东阳江最新消息一、持久化方式: DataStore:稳定性 MMKV:效率 SharedPreferneces 区别: 功能MMKVJetpack DataStoreSharedPreferneces是否阻塞主线程否否是是否线程安全是 是 是是否支持跨进程是否否是否类型…

一、持久化方式:

  • DataStore:稳定性

  • MMKV:效率

  • SharedPreferneces

区别:

功能MMKVJetpack DataStoreSharedPreferneces
是否阻塞主线程
是否线程安全是                是                
是否支持跨进程
是否类型安全
是否支持protocol buffers
是否能监听数据变化

二、SharedPreferences存储流程:

  1. k,v -> 存储到文件里

  2. 序列化:XML JSON PROTOBUFF…

  3. IO

三、SP的系统源码分析--调用流程

getSharedPreferences("test",MODE_PRIVATE)

  1. Context#getSharedPreferences --> Context的实现类 --ContextImpl#getSharedPreferences中去new SharedPreferencesImpl对象 ContextWrapper 用到装饰者模式

  2. SharedPreferencesImpl#startLoadFromDisk(),用一个同步代码块synchronized 将 mLoaded = false; (mLoaded -> 加载是否完成)

  3. 同时启动一个子线程去进行IO操作,子线程中调用loadFromDisk,去进行数据的加载 str = new BufferedInputStream(new FileInputStream(mFile), 16 * 1024) IO体系 用到装饰者模式

  4. 读数据:读出来之后加载到内存中,放到一个全局的HashMap变量mMap -- 因此SP读取数据的效率是非常高的

  5. 取数据:

  6. 每次取数据都会调用一下edit方法,内部都会new EditorImpl

  7. 得到edit之后,调用put()保存,将k v数据放到临时的map集合里mM

  8. 保存完了之后调用commit,apply

  9. commit:boolean 同步 当CPU忙,达到峰值,数据大,会产生ANR

  10. apply: void 异步 也会产生ANR

注意:

        在使用SP的时候,不要频繁的调用edit,如在for循环里、view#onDraw,gc频繁运行,可能会导致程序卡顿,如果GC选择的回收对象算法是标记清除算法,可能导致程序出现OOM导致内存碎片的产生。

分析:

        Apply异步产生ANR的原因 -- Activity跳转时,apply提交会包装成Runnable:任务 -> QueuedWork:队列 排队执行 ->会执行QueuedWork.waitToFinish:等待QueuedWork中的任务全部执行完

        AActivity ->BActivity

        A:onPause -> B:onCreate onStart onResume -> A:onStop

疑问:

        生命周期是怎么被调起的?/ Activity启动流程

        AMS -> Binder -> ActivityThread#ApplicationThread->对应的方法 -> handler -> 调用

总结:

特点

说明

数据格式

XML格式保存

初始化

子线程使用IO读取整个文件,进行XML解析,存入内存Map集合

保存

commit同步提交,阻塞主线程;apply异步提交,无法获取结果且可能数据丢失

更新

把Map中的数据,全部序列化为XML,覆盖文件保存(全量更新

优化方向:

  • 比XML更精简的数据格式,XML繁琐,冗余数据多,数据量大

  • 高效的文件操作 -- 传统IO 高效的NIO(零拷贝) FileChannel,transformTO

  • 更优的数据更新方式 -- 局部更新

http://www.hkea.cn/news/783134/

相关文章:

  • 赤峰市做网站公司今日的最新消息
  • 上海最大的贸易公司seo网络推广机构
  • jsp 网站开发广告发布平台
  • b2c网站综合对比评价站长统计幸福宝
  • 网站建设意见做推广app赚钱的项目
  • 哈尔滨营销网站制作做外贸推广
  • 深圳网站建设外贸公司排名搜索热词排名
  • 网络科技公司招聘可靠吗seo多久可以学会
  • 企业网站建设的方案ppt网络营销的特点主要包括什么
  • 如何自行建设网站推广关键词优化
  • 建设学院网站百度收录关键词查询
  • 有关外贸的网站有哪些内容武汉抖音seo搜索
  • 娄底网站建设的话术深圳网站关键词排名优化
  • 福田大型商城网站建设seo营销方法
  • 网站开发专业就业指导企业网站设计与实现论文
  • 网络营销方式的思维导图seo关键词优化系统
  • wordpress访客ip记录福清市百度seo
  • 网站下载速度慢互联网广告推广公司
  • 电影网站空间配置网络营销的工具和方法有哪些
  • 包装设计网站免费百度seo搜索引擎优化厂家
  • 免费做公司网站sem对seo的影响有哪些
  • 网站空间购买费用关键词优化计划
  • 网站制作可以卖多少钱陕西网站建设制作
  • 深圳中小企业网站制作谷歌海外广告投放
  • 做游戏网站的需求分析创建app平台
  • 青岛胶南做网站的有多少seo商学院
  • 二月网站建设南宁百度个人中心登录
  • 如何在相关网站免费做宣传广告免费建立个人网站官网
  • 做搜狗网站优化首自己建立网站步骤
  • 企业资质查询官方网站最好的小说网站排名