0

我正在使用像这样的计时器:

Timer timer = new Timer();
timer.scheduleAtFixedRate(new CheckWifi(), 0, 50000); // 5 seconds

class Wifi extends BroadcastReceiver {

 protected class CheckWifi extends TimerTask {

        @Override
        public void run() {
        }
 }

但是CheckWifi类是在一秒钟内执行的,而不是在 50 秒之后,就像在scheduleAtFixedRate. 为什么?

Runnable使用而不是更好Timer吗?

4

1 回答 1

3

你必须使用:

timer.scheduleAtFixedRate(new CheckWifi(), 50000, 50000);

第二个参数指定第一次执行之前的延迟。第三个参数指定后续执行之间的延迟。

于 2012-12-03T13:34:21.070 回答