Interface ValueRecorder

All Known Implementing Classes:
AbstractHistogram, AtomicHistogram, ConcurrentHistogram, Histogram, IntCountsHistogram, PackedConcurrentHistogram, PackedHistogram, Recorder, ShortCountsHistogram, SingleWriterRecorder, SynchronizedHistogram

public interface ValueRecorder
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    recordValue(long value)
    Record a value
    void
    recordValueWithCount(long value, long count)
    Record a value (adding to the value's current count)
    void
    recordValueWithExpectedInterval(long value, long expectedIntervalBetweenValueSamples)
    Record a value.
    void
    Reset the contents and collected stats
  • Method Details

    • recordValue

      void recordValue(long value) throws ArrayIndexOutOfBoundsException
      Record a value
      Parameters:
      value - The value to be recorded
      Throws:
      ArrayIndexOutOfBoundsException - (may throw) if value cannot be covered by the histogram's range
    • recordValueWithCount

      void recordValueWithCount(long value, long count) throws ArrayIndexOutOfBoundsException
      Record a value (adding to the value's current count)
      Parameters:
      value - The value to be recorded
      count - The number of occurrences of this value to record
      Throws:
      ArrayIndexOutOfBoundsException - (may throw) if value cannot be covered by the histogram's range
    • recordValueWithExpectedInterval

      void recordValueWithExpectedInterval(long value, long expectedIntervalBetweenValueSamples) throws ArrayIndexOutOfBoundsException
      Record a value.

      To compensate for the loss of sampled values when a recorded value is larger than the expected interval between value samples, will auto-generate an additional series of decreasingly-smaller (down to the expectedIntervalBetweenValueSamples) value records.

      Note: This is a at-recording correction method, as opposed to the post-recording correction method provided by AbstractHistogram.copyCorrectedForCoordinatedOmission(long). The two methods are mutually exclusive, and only one of the two should be be used on a given data set to correct for the same coordinated omission issue.

      Parameters:
      value - The value to record
      expectedIntervalBetweenValueSamples - If expectedIntervalBetweenValueSamples is larger than 0, add auto-generated value records as appropriate if value is larger than expectedIntervalBetweenValueSamples
      Throws:
      ArrayIndexOutOfBoundsException - (may throw) if value cannot be covered by the histogram's range
    • reset

      void reset()
      Reset the contents and collected stats