private synchronized void loop() throws InterruptedException { long current= System.currentTimeMillis(); Task task= currentTask(); while (task != EXIT) { long delay= fNextWakeup - current; if (delay <= 0) { task.run(); task= task.nextTask(); schedule(task, current); } else { wait(delay); current= System.currentTimeMillis(); task= currentTask(); } } }
private synchronized void loop() throws InterruptedException { long current= System.currentTimeMillis(); Task task= currentTask(); while (task != EXIT) { long delay= fNextWakeup - current; if (delay <= 0) { task.run(); task= task.nextTask(); schedule(task, current); } else { wait(delay); current= System.currentTimeMillis(); task= currentTask(); } } }