Class RateStatistic


  • public class RateStatistic
    extends Object

    Statistics on a time sequence rate.

    Calculates the rate at which the record() method is called over the configured period, retaining also the total count and maximum rate achieved.

    The implementation keeps a Deque of timestamps for all records for the last time period, so this method is not suitable for large rates unless a small time period is used.

    • Constructor Detail

      • RateStatistic

        public RateStatistic​(long period,
                             TimeUnit units)
    • Method Detail

      • getPeriod

        public long getPeriod()
      • reset

        public void reset()
        Resets the statistics.
      • age

        protected void age​(long period,
                           TimeUnit units)
      • record

        public int record()
        Records a sample value.
        Returns:
        the number of records in the current period.
      • getRate

        public int getRate()
        Returns:
        the number of records in the current period
      • getMax

        public long getMax()
        Returns:
        the max number of samples per period.
      • getOldest

        public long getOldest​(TimeUnit units)
        Parameters:
        units - the units of the return
        Returns:
        the age of the oldest sample in the requested units
      • getCount

        public long getCount()
        Returns:
        the number of samples recorded