老师你好,tableview数据源同步,这里我们在子线程或者主线程公用一个数据源不可以吗?为什么要把数据源拷贝一份到子线程,而导致删除操作后数据不同步的问题呢。
我感觉这里我们是不是可以在这样来做:主、子线程公用一个数据model。model里面有一个版本号,初始值都是0,每次我们修改model,都把这个值+1,。然后当我们子线程做预排版之前,先把这个版本号记录下来,在做完预排版等一系列耗时操作后,再读取一下公用model的版本号,如果和刚才记录的不一致,那么说明我们的model已经被修改了,这时候不论我们需要记下当前版本号,再排一下版,然后查看一下我们刚才记录的model版本号和现在公用得model版本号码是不是一直,如果不一致则重复刚才的操作,如果相同则从子线程回到主线程执行刷新操作。ps:这里我们操作的数据model和预排版操作产生的framemodel注意下多线程中数据冲突的问题即可