Class TimeRecorder

java.lang.Object
com.hypixel.hytale.common.benchmark.ContinuousValueRecorder
com.hypixel.hytale.common.benchmark.TimeRecorder
Direct Known Subclasses:
TimeDistributionRecorder

public class TimeRecorder extends ContinuousValueRecorder
Utility class to collect min, max and average of time value.
Since:
2018-08-10
  • Field Details

  • Constructor Details

    • TimeRecorder

      public TimeRecorder()
  • Method Details

    • start

      public long start()
      Start a time sample.
      Returns:
      Value to be passed to end call
    • end

      public double end(long start)
      End and record a time sample.
      Parameters:
      start - value as returned from start call
      Returns:
      Seconds passed between start and end
    • recordNanos

      public double recordNanos(long nanos)
      Record a time sample of given length.
      Parameters:
      nanos - Sample interval in nano seconds to record
      Returns:
      Sample interval in seconds
    • toString

      @Nonnull public String toString()
      Overrides:
      toString in class Object
    • formatTime

      @Nonnull public static String formatTime(double secs)
      Convert a fractional time in seconds to a string with unit.
      Parameters:
      secs - Seconds
      Returns:
      String with value (at least 2 significant digits) and unit (seconds, milli, micro, nano)
    • formatHeader

      public void formatHeader(@Nonnull Formatter formatter)
    • formatHeader

      public void formatHeader(@Nonnull Formatter formatter, @Nonnull String columnFormatHeader)
    • formatValues

      public void formatValues(@Nonnull Formatter formatter)
    • formatValues

      public void formatValues(@Nonnull Formatter formatter, @Nonnull String columnFormatValue)