title: What should Timertask.scheduleAtFixedRate do if the clock changes?
body: <p>We want to run a task every 1000 seconds (say).</p>
  
  <p>So we have</p>
  
  <pre><code>timer.scheduleAtFixedRate(task, delay, interval);
  </code></pre>
  
  <p>Mostly, this works fine. However, this is an embedded system and the user can change the real time clock. If they set it to a time in the past after we set up the timer, it seems the timer doesn't execute until the original real-time date/time. So if they set it back 3 days, the timer doesn't execute for 3 days :(</p>
  
  <p>Is this permissible behaviour, or a defect in the Java library? The Oracle javadocs don't seem to mention anything about the dependency or not on the underlying value of the system clock.</p>
  
  <p>If it's permissible, how do we spot this clock change and reschedule our timers?</p>