关于Handler

Posted hustdc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Handler相关的知识,希望对你有一定的参考价值。

1 什么是Handler

Handler是android子线程同主线程间进行线程通信的工具。本质上是一个消息队列,生成者是子线程,消费者是主线程。

2 Handler解决的问题

子线程中不能进行UI更新,UI更新通过Handler交给主线程来做。

3 使用

3.1 使用sendMessage()

使用sendMessage()的话,需要实现handleMessage方法,在这个方法中接收子线程传过来的消息,并处理,因为sdk提供了一个消息队列,因此不需要关心同步问题,消息是一个一个串行处理的。

3.2 使用post()

使用post的话,子线程提供一个Runnable的对象,不需要自己实现handleMessage方法。

postDelayed同理,只不过消息的处理出于某个目的被人为的推迟。

以上是关于关于Handler的主要内容,如果未能解决你的问题,请参考以下文章

Android HandlerThread 消息循环机制之源代码解析

自己动手撸一个Handler

自己动手撸一个Handler

Android JNI之C/C++层调用JAVA

sloop公共函数之添加信号,定时器及socket

Android JNI之C/C++层调用JAVA