UIT

Handler总结

2017-02-08  本文已影响31人  siyanGo

先给大家上个图,自己画的不对请指正。

Handler.png

有一天Handler 外出旅行 买了许多违禁品不让带回去(Message),只好写了一份清单(MessageQueue)给 Looper管家 管家按照清单依次发送回家给Hander接收。

一个Thread 可以有多个Handler ,每个handler只能对应一个Looper。

Android 中的 Handler 在应用的生命周期中扮演着不可缺少的角色。它是构成半同步/半异步模式架构的基础。许多内部和外部的代码都依赖 Handler 去异步地分发事件,它能以最小的代价去维持线程安全。
更深入地理解组件的工作方式能够帮助解决疑难杂症。这也能让我们以最佳的方法使用组件的 API。我们通常将 Handler 作为工作线程和UI线程间的通信机制,但 Handler 并不仅限于此。它出现在 IntentService[6], 和 Camera2[7] 和许多其它的 API 中。在这些 API 调用中,Handler 更多情形下是被用作任意线程间的通信工具。
在深入理解了 Handler 的原理后,我们能运用其构建更有效率、更简洁、更健壮的应用程序。

参考:https://gold.xitu.io/entry/57fc9e937db2a20059628aa6

上一篇 下一篇

猜你喜欢

热点阅读