Class StopWatch


  • public class StopWatch
    extends Object
    Simple stop watch, allowing for timing of a number of tasks, exposing total running time and running time for each named task.

    Conceals use of System.nanoTime(), improving the readability of application code and reducing the likelihood of calculation errors.

    Note that this object is not designed to be thread-safe and does not use synchronization.

    This class is normally used to verify performance during proof-of-concepts and in development, rather than as part of production applications.

    • Constructor Detail

      • StopWatch

        public StopWatch()
        Construct a new stop watch. Does not start any task.
      • StopWatch

        public StopWatch​(String id)
        Construct a new stop watch with the given id. Does not start any task.
        Parameters:
        id - identifier for this stop watch. Handy when we have output from multiple stop watches and need to distinguish between them.
    • Method Detail

      • isRunning

        public boolean isRunning()
        Return whether the stop watch is currently running.
      • totalTime

        public TimeValue totalTime()
        Return the total time for all tasks.
      • taskInfo

        public StopWatch.TaskInfo[] taskInfo()
        Return an array of the data for tasks performed.
      • shortSummary

        public String shortSummary()
        Return a short description of the total running time.
      • prettyPrint

        public String prettyPrint()
        Return a string with a table describing all tasks performed. For custom reporting, call getTaskInfo() and use the task info directly.
      • toString

        public String toString()
        Return an informative string describing all tasks performed For custom reporting, call getTaskInfo() and use the task info directly.
        Overrides:
        toString in class Object