|
join 1.0
lightweight network framework library
|
lock-free, multi-producer-safe performance statistics collector. More...
#include <statistics.hpp>
Public Types | |
| using | Duration = typename ClockPolicy::Duration |
| using | TimePoint = typename ClockPolicy::TimePoint |
Public Member Functions | |
| BasicStats (const std::string &name={}) | |
| create instance. | |
| BasicStats (const BasicStats &other)=delete | |
| copy constructor. | |
| BasicStats & | operator= (const BasicStats &other)=delete |
| copy assignment. | |
| BasicStats (BasicStats &&other)=delete | |
| move constructor. | |
| BasicStats & | operator= (BasicStats &&other)=delete |
| move assignment. | |
| ~BasicStats () noexcept | |
| destroy instance. | |
| const std::string & | name () const noexcept |
| get metric name. | |
| TimePoint | start () const noexcept |
| mark the beginning of a measured interval. | |
| void | stop (TimePoint startTime) noexcept |
| mark the end of a measured interval and update all aggregates. | |
| void | reset () noexcept |
| reset all accumulators to their initial state. | |
| uint64_t | count () const noexcept |
| total number of completed intervals. | |
| Duration | last () const noexcept |
| duration of the most recently completed interval. | |
| Duration | min () const noexcept |
| minimum duration observed across all completed intervals. | |
| Duration | max () const noexcept |
| maximum duration observed across all completed intervals. | |
| std::chrono::duration< double, std::nano > | mean () const noexcept |
| arithmetic mean of all completed intervals. | |
| double | throughput () const noexcept |
| operations per second. | |
| Duration | percentile (double p) const noexcept |
| compute the requested percentile from the HDR histogram. | |
| int | mlock () const noexcept |
| lock histogram memory in RAM. | |
lock-free, multi-producer-safe performance statistics collector.
| using join::BasicStats< ClockPolicy >::Duration = typename ClockPolicy::Duration |
| using join::BasicStats< ClockPolicy >::TimePoint = typename ClockPolicy::TimePoint |
|
inlineexplicit |
create instance.
| name | metric name. |
|
delete |
copy constructor.
| other | other object to copy. |
|
delete |
move constructor.
| other | other object to move. |
|
inlinenoexcept |
destroy instance.
|
inlinenoexcept |
total number of completed intervals.
|
inlinenoexcept |
duration of the most recently completed interval.
|
inlinenoexcept |
maximum duration observed across all completed intervals.
|
inlinenoexcept |
arithmetic mean of all completed intervals.
|
inlinenoexcept |
minimum duration observed across all completed intervals.
|
inlinenoexcept |
lock histogram memory in RAM.
|
inlinenoexcept |
get metric name.
|
delete |
move assignment.
| other | other object to move. |
|
delete |
copy assignment.
| other | other object to copy. |
|
inlinenoexcept |
compute the requested percentile from the HDR histogram.
| p | percentile in [0.0, 100.0]. |
|
inlinenoexcept |
reset all accumulators to their initial state.
|
inlinenoexcept |
mark the beginning of a measured interval.
|
inlinenoexcept |
mark the end of a measured interval and update all aggregates.
| startTime | time point returned by the matching start() call. |
|
inlinenoexcept |
operations per second.