An alarm is something that goes off at some point in the future.
An alarm is not primed until
Alarm.setAlarmAction(Sleeper) is called.
Alarm.setAlarmAction(Sleeper) should only be called once before
Alarm.cancel() is called, and the latter should only be called once.
The alarm should not 'go off' after
Alarm.cancel() has been called,
however since this is a multi-threaded environment,
Sleeper s
should protect themselves from late calls to
Sleeper.wakeUp .
author: Joe Walker [joe at getahead dot ltd dot uk]
Alarms need something to do when they go off.
After this method has been called the Alarm may 'go off', once only,
by calling
Sleeper.wakeUp .
Parameters: sleeper - The action to awake when the alarm goes off