Search code examples
javatimingexecution-time

How do I time a method's execution in Java?


  1. How do I get a method's execution time?
  2. Is there a Timer utility class for things like timing how long a task takes, etc?

Most of the searches on Google return results for timers that schedule threads and tasks, which is not what I want.


Solution

  • There is always the old-fashioned way:

    long startTime = System.nanoTime();
    methodToTime();
    long endTime = System.nanoTime();
    
    long duration = (endTime - startTime);  //divide by 1000000 to get milliseconds.