数据源同步解决方案

情景

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

解决方案

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


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

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

串行访问

你可能感兴趣的:(数据源同步解决方案)