Class LatencyAccumulator
java.lang.Object
org.terracotta.statistics.derived.latency.LatencyAccumulator
- All Implemented Interfaces:
LatencyStatistic,ChainedEventObserver,ChainedObserver
This accumulator accumulate latency metrics. It is lock-free so when computing
some values,it is possible that a thread is writing some values while
the snapshot is being computed. So there is the possibility of an error in the
result.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final LongAdderprivate static final longprivate static final longprivate final LongAccumulatorprivate final LongAccumulatorprivate final LongAdder -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaccumulate(long latency) voidaccumulate(LatencyAccumulator accumulator) static LatencyAccumulatoraccumulator(long... latencies) doubleaverage()longcount()static LatencyAccumulatorempty()voidevent(long time, long latency) Called to indicate an event happened.booleanisEmpty()maximum()minimum()toString()longtotal()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.terracotta.statistics.derived.latency.LatencyStatistic
averageStatistic, maximumStatistic, minimumStatistic
-
Field Details
-
DEFAULT_MIN
private static final long DEFAULT_MIN- See Also:
-
DEFAULT_MAX
private static final long DEFAULT_MAX- See Also:
-
count
-
total
-
minimum
-
maximum
-
-
Constructor Details
-
LatencyAccumulator
private LatencyAccumulator(long... latencies)
-
-
Method Details
-
accumulate
public void accumulate(long latency) -
accumulate
-
count
public long count() -
total
public long total() -
isEmpty
public boolean isEmpty() -
event
public void event(long time, long latency) Description copied from interface:ChainedEventObserverCalled to indicate an event happened.- Specified by:
eventin interfaceChainedEventObserver- Parameters:
time- the clock at event completion in nslatency- the event latency in ns
-
maximum
- Specified by:
maximumin interfaceLatencyStatistic- Returns:
- The maximum in ns or null if it does not exist yet
-
minimum
- Specified by:
minimumin interfaceLatencyStatistic- Returns:
- The minimum in ns or null if it does not exist yet
-
average
public double average()- Specified by:
averagein interfaceLatencyStatistic- Returns:
- The average in ns or NaN if no value
-
toString
-
accumulator
-
empty
-