在Android开发中,机制是必不可少的,占据着举足轻重的地位,因此作为一位开发者,掌握机制相关的技术是很有必要的。相信很多开发者在面试者或多或少都被问过这方面的问题.
【面试技巧】在回答Handler机制时,从Handler的作用开始说起,最后具体到Handler机制在日常开发中的作用,这样的回答理论与实际相结合就比较完善。
在机制的中有两种比较重要,分别是Binder机制和Handler机制。 1. 前者用于跨进程通讯,并且通过 ServiceManager 给上层应用提供了大量的服务, 2. 而后者用于进程内部通讯,以消息队列的形式驱动应用的运行。
4个对象各司其职,完成了线程之间的完美通信。如果想在自己的线程中创建Handler必须调用Looper的prepare()与loop()两个方法。下面通过一个图例来梳理整个Handler消息处理流程:
从该图可以清晰地看出整个Handler 消息机制处理流程。Handler消息处理首先需要在UI线程中创建一个Handler对象,然后在子线程中调用Handler的sendMessage()方法,接着这个消息会存放在UI线程的MesssgeQueue中,通过Looper对象取出MessageQueue中的消息,最后分发回Handler 的handlerMessage()方法中。
待续。。。。。。