使用Handler.postDelayed计划的runnable是否等待当前的runnable完成?

时间:2017-04-03 23:47:30

标签: android

我的代码如下

mNonUIHandler.post(runnable1);
mNonUIHandler.postDelayed(runnable2, 20*1000);

假设runnable1需要30秒才能完成。 runnable2会在runnable1完成之前运行(现在+30秒),直到runnable1完成或运行时间(现在+20秒)?

1 个答案:

答案 0 :(得分:0)

您发布的处理程序在创建它的线程上运行。一个线程一次只能做一件事。所以是的,它会等到第一个(以及事件队列中的任何其他事件)完成后再运行新的事件。如果您需要立即运行,则需要创建新的线程而不是发布消息。