Handler Thread的Android目的

时间:2012-10-09 09:20:03

标签: android multithreading

我只是想知道为什么Handler必须使用Runnable的实例?毕竟Handler的目的是将一个线程放到另一个线程中。使用第三个线程,Runnable来实现这个目的的目的是什么?

亲切的问候,

1 个答案:

答案 0 :(得分:2)

我想我理解你的困惑:你认为Runnable对象本身就是一个单独的Thread的实例。它不是。简单来说,它只是一个对象,通过实现Runnable接口,传递它的Thread知道它可以通过调用它上面的.run()来执行其中的代码。

当您向Runnable发送Handler个对象时,Runnable的{​​{1}} Handler执行了Thread

简单来说,以这种方式解释它可能就足够了:如果你想在Handler上提供一些工作要做Thread,那么你必须在里面提供那段代码一个东西。现在,您提供给Handler的对象必须实现某种interface,以便Handler知道在该对象中调用哪些方法以使其执行需要执行的操作。在基本术语中,Runnable接口的作用是:实现Runnable的对象必须实现run()方法。