@@ -0,0 +1,1518 @@
+package net.openhft.chronicle.core;%0A%0Aimport java.util.concurrent.locks.LockSupport;%0A%0Apublic class SleepTesterMain %7B%0A    public static void main(String%5B%5D args) throws InterruptedException %7B%0A        %7B%0A            long start = System.nanoTime();%0A            long count = 0;%0A            while (System.nanoTime() %3C start + 10e9) %7B%0A                for (int i = 0; i %3C 10; i++) %7B%0A                    LockSupport.parkNanos(1);%0A                    count++;%0A                %7D%0A            %7D%0A            long end = System.nanoTime();%0A            System.out.printf(%22LockSupport.parkNanos(1) took an average of %25,d ns%25n%22, (end - start) / count);%0A        %7D%0A        %7B%0A            long start = System.nanoTime();%0A            long count = 0;%0A            while (System.nanoTime() %3C start + 10e9) %7B%0A                for (int i = 0; i %3C 10; i++) %7B%0A                    Thread.yield();%0A                    count++;%0A                %7D%0A            %7D%0A            long end = System.nanoTime();%0A            System.out.printf(%22Thread.yield() took an average of %25,d ns%25n%22, (end - start) / count);%0A        %7D%0A        %7B%0A            long start = System.nanoTime();%0A            long count = 0;%0A            while (System.nanoTime() %3C start + 10e9) %7B%0A                for (int i = 0; i %3C 10; i++) %7B%0A                    Thread.sleep(1);%0A                    count++;%0A                %7D%0A            %7D%0A            long end = System.nanoTime();%0A            System.out.printf(%22Thread.sleep(1) took an average of %25,d ns%25n%22, (end - start) / count);%0A        %7D%0A    %7D%0A%7D%0A

Add a benchmark for sleeping