MCPcopy Create free account
hub / github.com/Vhonowslend/StreamFX-Public / average_duration

Method average_duration

source/util/util-profiler.cpp:65–82  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

63}
64
65double_t streamfx::util::profiler::average_duration()
66{
67 std::chrono::nanoseconds duration{0};
68 uint64_t count = 0;
69
70 std::map<std::chrono::nanoseconds, size_t> copy_timings;
71 {
72 std::unique_lock<std::mutex> ul(_timings_lock);
73 copy(_timings.begin(), _timings.end(), std::inserter(copy_timings, copy_timings.end()));
74 }
75
76 for (auto kv : copy_timings) {
77 duration += kv.first * kv.second;
78 count += kv.second;
79 }
80
81 return double_t(duration.count()) / double_t(count);
82}
83
84template<typename T>
85inline bool is_equal(T a, T b, T c)

Callers

nothing calls this directly

Calls 1

countMethod · 0.45

Tested by

no test coverage detected