数据源同步解决方案

情景

在主线程删除数据源的一条数据(如首页订单),同时进行了下拉刷新,这时候会在子线程中修改数据源,导致数据不一致问题

解决方案

  • 1、并发访问,数据拷贝:可以实时显示修改后的UI,但需要记录同步删除动作和数据拷贝,会增加内存开销。


    并发访问,数据拷贝
  • 2、串行访问:对内存消耗不大,但是修改数据的显示有延迟。
    如:在子线程中进行网络请求、数据解析,会把请求回来的数据在串行队列做新增数据预排版,这时在主线程中删除某一行数据,需要调用同步的方式在串行队列中进行处理,那么就需要等待一小会儿,完成删除同步之后再去主线程中更新UI。

缺点:在子线程处理比较耗时的操作时,删除某一行动作会有一定延迟。

串行访问
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容