From 2317e7e56b56273ab3c28e0e5d65b176833352b8 Mon Sep 17 00:00:00 2001 From: Fabien Savy Date: Wed, 3 Aug 2022 16:46:48 +0200 Subject: [PATCH] Add total CPU time getter --- cpulimiter/src/limiter.rs | 5 +++++ cpulimiter/src/process_group.rs | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/cpulimiter/src/limiter.rs b/cpulimiter/src/limiter.rs index d1d4506..26084d5 100644 --- a/cpulimiter/src/limiter.rs +++ b/cpulimiter/src/limiter.rs @@ -102,4 +102,9 @@ impl CpuLimit { pub fn cpu_usage(&self) -> f64 { self.group.read().cpu_usage() } + + /// Retrieves the total amount of CPU time used by the target process. + pub fn total_cpu_time(&self) -> Duration { + self.group.read().total_cpu_time() + } } diff --git a/cpulimiter/src/process_group.rs b/cpulimiter/src/process_group.rs index 4d2fd9b..93fca35 100644 --- a/cpulimiter/src/process_group.rs +++ b/cpulimiter/src/process_group.rs @@ -87,6 +87,11 @@ impl ProcessGroup { self.cpu_usage } + /// Retrieves the total amount of CPU time used. + pub fn total_cpu_time(&self) -> Duration { + self.total_time + } + /// Sends a signal to the target process and its children if needed. fn kill(&self, signal: &Signal) { let _ = self.target.kill(signal);