From 60eaa2c8260cdb5191675f722accd35fb77cedbb Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Mon, 22 Jan 2024 10:05:04 +0100 Subject: [PATCH] Process: Read QTC_MEASURE_PROCESS just once And store it in static variable. Change-Id: Ia630f63125088bff32a4d6df9de4c8279c8d8b34 Reviewed-by: hjk --- src/libs/utils/process.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/libs/utils/process.cpp b/src/libs/utils/process.cpp index e0f448c4bdb..7bd5070da6a 100644 --- a/src/libs/utils/process.cpp +++ b/src/libs/utils/process.cpp @@ -58,17 +58,22 @@ static bool isGuiEnabled() return isGuiApp && isMainThread(); } +static bool isMeasuring() +{ + static const bool measuring = qtcEnvironmentVariableIsSet("QTC_MEASURE_PROCESS"); + return measuring; +} + class MeasureAndRun { public: MeasureAndRun(const char *functionName) : m_functionName(functionName) - , m_measureProcess(qtcEnvironmentVariableIsSet("QTC_MEASURE_PROCESS")) {} template std::invoke_result_t measureAndRun(Function &&function, Args&&... args) { - if (!m_measureProcess) + if (!isMeasuring()) return std::invoke(std::forward(function), std::forward(args)...); QElapsedTimer timer; timer.start(); @@ -151,7 +156,6 @@ private: } const char * const m_functionName; - const bool m_measureProcess; std::atomic_int m_hitThisAll = 0; std::atomic_int m_hitThisMain = 0; std::atomic_int64_t m_totalThisAll = 0;