当前位置: 代码迷 >> Android >> 非UI线程的handler有什么用,该如何解决
  详细解决方案

非UI线程的handler有什么用,该如何解决

热度:17   发布时间:2016-04-27 22:44:50.0
非UI线程的handler有什么用
Handler机制主要是用让主线程接收其他线程消息,更新UI,那非UI线程定义自己的Handler有什么用
------解决思路----------------------
handle从消息队列MessageQueue取出消息message,分发给handle所属的线程进行处理。既然你理解了UI主线程,其他不一样吗?都是线程,没有什么不同,唯一不同就只是不能在UI主线程更新UI
------解决思路----------------------
引用:
handle从消息队列MessageQueue取出消息message,分发给handle所属的线程进行处理。既然你理解了UI主线程,其他不一样吗?都是线程,没有什么不同,唯一不同就只是不能在UI主线程更新UI
最后一句说错了,不是不能更新UI是你不能在主线程中进行耗时的网络操作,这样会阻塞线程。
------解决思路----------------------
主线程中是不可以有耗时操作,比如获取大量数据或者文件,访问网络,这个时候将这些耗时操作交给子线程去处理,如果有更新UI操作那就更新UI的操作必须由主线程来完成,这个时候就涉及到了Handler消息机制,主要就是因为主线程不能有耗时操作,子线程不可以更新UI,如果不涉及到更新UI,耗时操作放在子线程中,其他操作也可以由子线程来执行,这个也得看需求
  相关解决方案