public class JavaThread { public static class MyThread extends Thread { @Override public void run() {} } public static void main(String[] args) throws InterruptedException { int NoOfTimes = 50000; long start = System.nanoTime(); for(int i = 1; i <= NoOfTimes; i += 1) { JavaThread.MyThread m = new JavaThread.MyThread(); m.start(); m.join(); } long end = System.nanoTime(); System.out.println( (end - start) / NoOfTimes); } }