I'm using the Activity class to implement a recurring job. The problem is that Activity::start() checks for _stopped. Stopped will be only set if the activity was asked to stop, not if the activity function returns after finishing.
I think Activity::start() should check for _running. I also think _stopped should be called _shouldStop because it is just a request to stop the activity.