checkpoint
Returns the forward progress made by the execution of run.
The checkpoint method gets called exactly once after the call to run either completes successfully or times out, and not necessarily in the same thread as run. The checkpoint method does not get called if run is otherwise interrupted.