gpt4 book ai didi

Android:无论前一个滴答声尚未完成,计时器都会滴答作响吗?

转载 作者:行者123 更新时间:2023-11-30 01:41:29 25 4
gpt4 key购买 nike

我已经使用Timer实现了每30秒一次的网络操作。

    Timer myTimer_30sn_send_alive = new Timer();
myTimer_30sn_send_alive.schedule(new TimerTask() {
@Override
public void run() {
// Send alive message on network
// ....
}

}, 5000, 30 * 1000); // 30sn

如果网络超时为 40 秒,并且 Timer 将再次计时。

所以task可能还没有执行完Task,其他tick时间来了。

我想知道无论 TimerTask 操作是否完成,计时器都会计时吗!?

最佳答案

答案很简单:不,不是。虽然 TimerTask 在它自己的线程中运行,但它不会在另一个滴答结束之前开始一个新的滴答。

您可以使用这样的测试代码来验证这一点,并检查 logcat 的输出。

    Timer testTimer = new Timer();
testTimer.schedule(new TimerTask() {
@Override
public void run() {
Log.d("Test", "Tick: " + SystemClock.elapsedRealtime());
SystemClock.sleep(10000);
}
}, 0, 5000);

关于Android:无论前一个滴答声尚未完成,计时器都会滴答作响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34449647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com