Java 为什么android将PerformClick作为非新线程运行
在java和android世界中,要运行now线程,我们就这样执行它Java 为什么android将PerformClick作为非新线程运行,java,android,multithreading,Java,Android,Multithreading,在java和android世界中,要运行now线程,我们就这样执行它 Thread tr = new Thread(new Runnable() { @Override public void run() { todo(); } }); tr.start(); 所以tr是新线程,但在android api中,PerformClick实现了可运行接口,通常由execute-run方法调用 private static void handleCallback
Thread tr = new Thread(new Runnable() {
@Override
public void run() {
todo();
}
});
tr.start();
所以tr是新线程,但在android api中,PerformClick实现了可运行接口,通常由execute-run方法调用
private static void handleCallback(Message message) {
message.callback.run();
}
回调是PerformClick
private final class PerformClick implements Runnable {
@Override
public void run() {
performClick();
}
}
我试图理解为什么在这个案例中它不是新的线程
感谢什么是
performClick()
?performClick()它是视图类中的方法,但对于这个问题,performClick类上的run方法体并不重要,android在主线程中执行所有与用户界面相关的执行,因此它不会创建新线程来运行performClick(不过我不确定您的问题是什么)