in src/main/java/org/apache/sling/discovery/base/commons/PeriodicBackgroundJob.java [64:82]
public void run() {
try{
while(!stopping) {
// first sleep
try {
Thread.sleep(intervalSeconds * 1000);
} catch (InterruptedException e) {
logger.info("run: got interrupted: "+e, e);
}
if (stopping) {
break;
}
// then execute if not stopping
safelyRun(runnable);
}
} finally {
stopped = true;
}
}