/** * Actual job code. * * @return true if job is done, false if it will still be running after the method returns. */ private final JobState exec() { try { return execImpl(); } finally { cleanup(); } }