Gang, I have overhauled the Scheduler library, because it behaved very weirdly before, for instance loosing the tasks permanently and other issues.
The previous version can be checked for problems, just by schedule more than one "OnceSchedule" in the test case and it won't work. Now, to sort out the problem, I decided to drop the "transient" case, mostly because one can use java.util.concurrent executors for that. We could possibly add it back later. The TaskRunner is handling the execution state machine, and it is NOT nice. Primarily because I think it is crucial to detect "overrun", i.e. the Task is still running when it is time to run it again, skip the new run and indicate (in a counter) that it has happened. That creates a mess of UnitOfWorks, and takes a long time (15-20ms on my old MacBook) to execute. Better ideas on how to achieve this is most welcome. I have updated the docs, but a proof-read and touch up would be good. I have not re-generated the 'latest' website. The reason for all this work is because my application I am working on is heavily dependent on this library, so I want to thank Paul for creating it in the first place. Cheers -- Niclas Hedhman, Software Developer http://zest.apache.org - New Energy for Java
