我只是想知道为什么Handler必须带一个Runnable的实例?毕竟Handler的目的是将工作从一个线程转移到另一个线程。使用第三个线程,一个Runnable来完成这个任务的目的是什么?Handler线程的Android目的
亲切的问候,
我只是想知道为什么Handler必须带一个Runnable的实例?毕竟Handler的目的是将工作从一个线程转移到另一个线程。使用第三个线程,一个Runnable来完成这个任务的目的是什么?Handler线程的Android目的
亲切的问候,
我想我明白你的困惑:你认为一个Runnable
对象本身的独立Thread
一个实例。不是这样。简而言之,它只是一个对象,通过实现Runnable
接口,您可以通过Thread
来知道它可以通过调用.run()
来执行其中的代码。
当你发送一个Runnable
对象到Handler
,即Runnable
在执行Handler
的Thread
。
简而言之,这可能足以用这种方式来解释:如果你想提供一个Handler
有自己的工作要做Thread
,那么你必须在一个对象内提供这段代码。现在,您提供给Handler
的对象必须实现某种interface
,以便Handler
知道要在该对象中调用哪些方法以使其执行所需的操作。在基本术语中,这是Runnable
接口的作用:对于实施Runnable
来实施run()
方法的对象是强制性的。
完美使真正的感觉。谢谢。 – user1730789
我不确定你的意思。但阅读[文档](http://developer.android.com/reference/android/os/Handler.html)可能会有所帮助。 – keyser