老师请教您下第七章中提到的线程冲突的问题

来源:7-11 客户端实现搜索人功能

慕粉1846274408

2017-06-08

 老师请问您一下~

您说这样写可以避免线程冲突,老师避免线程冲突这块没有太明白 想跟您请教一下~

http://szimg.mukewang.com/5938f3fe0001a2df07060192.jpg

写回答

1回答

Qiujuer

2017-06-08

多谢你的问题,大家提问,同学们就都看得见了。
明确的来说 我们的界面操作都是属于UI线程的操作,而咱们的网络查询搜索是属于一个子线程的操作 是okhttp帮咱们完成的操作。这就意味着 子线程回来的时机可能是不定的,这个查询可能回来了也可能还没有回来,在下一次触发界面搜索的时候。


那么在用户进行UI操作,更改文字后需要在此请求搜索的时候,这个时候上一次的搜索可能还没有完成,那么我们需要做的就是在发起一个网络请求后把这个网络请求的Call给存储起来,在每次网络请求之前都进行一次取消的操作,保证上一个网络子线程不会回调到我们的UI界面上来,避免界面的数据不匹配错乱的问题。

祝学习愉快~~

0
1
慕粉1846274408
谢谢老师~
2017-06-08
共1条回复

手把手开发完整的即时通讯App 客户端+服务端+MVP架构

客户端+服务端+MVP架构+封装思想+主流框架

1755 学习 · 874 问题

查看课程