From 3bb518509ae4f3b936e1351a639f710b7910ebeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Thu, 7 Jul 2022 09:45:00 +0200 Subject: [PATCH] Use one Timer::Connection per ProfilingTask instead of per IdleRange. --- build/.cmake/api/v1/query/client-vscode/query.json | 1 + src/mx/tasking/profiling/profiling_task.h | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 build/.cmake/api/v1/query/client-vscode/query.json diff --git a/build/.cmake/api/v1/query/client-vscode/query.json b/build/.cmake/api/v1/query/client-vscode/query.json new file mode 100644 index 0000000..b9dc05e --- /dev/null +++ b/build/.cmake/api/v1/query/client-vscode/query.json @@ -0,0 +1 @@ +{"requests":[{"kind":"cache","version":2},{"kind":"codemodel","version":2},{"kind":"toolchains","version":1}]} \ No newline at end of file diff --git a/src/mx/tasking/profiling/profiling_task.h b/src/mx/tasking/profiling/profiling_task.h index e7ad9f4..0746f7f 100644 --- a/src/mx/tasking/profiling/profiling_task.h +++ b/src/mx/tasking/profiling/profiling_task.h @@ -16,7 +16,7 @@ namespace mx::tasking::profiling { class IdleRange { public: - IdleRange() : _timer(Timer::Connection(system::Environment::env)), _start(std::chrono::microseconds(_timer.elapsed_ms())) {} + IdleRange(Timer::Connection &timer) : _timer(timer), _start(std::chrono::microseconds(_timer.elapsed_ms())) {} IdleRange(IdleRange &&) = default; ~IdleRange() = default; @@ -55,7 +55,7 @@ private: std::chrono::steady_clock::time_point _end; // Timer session for Genode - Timer::Connection _timer; + Timer::Connection &_timer; }; /** @@ -78,6 +78,9 @@ private: util::maybe_atomic &_is_running; Channel &_channel; std::vector _idle_ranges; + + // Timer session for Genode + Timer::Connection &_timer; }; /**