我试图实现一个循环Runnable
。我发现的示例似乎使用以下想法来启动可运行的。
handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
handler.postDelayed(this, 10000);
doIt();
count ++;
}
};
r.run();// what I prefer
// handler.postDelayed(r, 1000);//their idea
我更喜欢调用 run()
方法来启动 Runnable
。如果直接调用 run()
,我可能会遇到什么麻烦!
谢谢! :)
最佳答案
如果您调用r.run()
,Runnable
将立即执行。但是,如果您按照他们的建议调用 handler.postDelayed(r, 1000);
,则 Runnable
将不会执行,直到 1s 过去。所以,这是第一点。二、为什么不用Android
提供的Thread Loop merchanism
,即Handler
AsyncTask
HandlerThread
是为了 Android
支持的很好?
关于java - Handler.postDelayed 对比 Runnable.run。可以调用 .run 而不是 .postDelayed 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29717280/