if (timerIteration.incrementAndGet() > iterations) {
if (outputResults.get()) {
outputResults.set(false); // only output once
source.dispose(); // end timer
final long endTime = System.nanoTime();
final long totalTime = TimeUnit.NANOSECONDS.toMillis(endTime - startTime);
final float calculatedDelayTime = totalTime / (float) iterations;
f_to.out(String.format(" %2d ms %5d %5d ms %5.2f ms", thisPeriodMillis, iterations, totalTime, calculatedDelayTime));