pub fn get_processes_with_cpu_utilization_in_percentage(
process_filter: &ProcessFilter<'_>,
interval: Duration
) -> Result<Vec<(Process, f64)>, ScannerError>
Expand description
Get process information by reading files in the /proc/PID
folders and measure the cpu utilization in percentage within a specific time interval. If the number it returns is 1.0
, means 100%
.
extern crate mprober_lib;
use std::thread::sleep;
use std::time::Duration;
use mprober_lib::process;
let processes_with_cpu_percentage = process::get_processes_with_cpu_utilization_in_percentage(
&process::ProcessFilter::default(),
Duration::from_millis(100),
)
.unwrap();
for (process, cpu_percentage) in processes_with_cpu_percentage {
println!("{}: {:.1}%", process.pid, cpu_percentage * 100.0);
}