爲Handler.postDelayed(可運行R,長delayMillis)說的文檔 -在Handler.postDelayed()方法中,delayMillis參數實際上代表什麼?
導致要被添加到消息隊列中的可運行R,經過指定的時間量後運行 。
r將被執行的Runnable。 delayMillis直到Runnable將被執行的延遲(以毫秒爲單位)。
注意:最後一個字伏法和不添加到Message Queue。 Runnable即時添加到消息隊列的末尾。也就是說,執行此Runnable的延遲時間等於執行消息隊列中Runnable前的消息/可運行時間。如何保證兩個時間是平等的?我錯過了什麼嗎?例如,假設MessageQueue當前包含A,B,C,分別佔用1,1.6,2秒,而handler.postDelayed(R,4000)現在在MessageQueue的末尾附加R。 A,B,C將在4.6秒內完成,但R計劃在4秒後運行。這怎麼可能?如果延遲超過4.6秒會怎樣?
URL - Android Reference page for Handler postDelayed
基本上它會在至少'delayMillis'毫秒後運行。 – Simas 2014-08-29 20:13:12