Crates.io | cpu-monitor |
lib.rs | cpu-monitor |
version | 0.1.1 |
source | src |
created_at | 2018-08-29 19:20:06.197925 |
updated_at | 2018-09-02 08:30:33.96032 |
description | A library to get cpu usage over a given duration |
homepage | |
repository | https://github.com/derekdreery/cpu-monitor |
max_upload_size | |
id | 82004 |
size | 18,590 |
This library provides methods for getting the percentage of cpu time spent idle, a.k.a. cpu usage.
It follows the structure of std::time
, since you can only work with a difference between 2
fixed points in time. Cpu usage and a specific instant is either 0 or 1 (per core), the value of
interest is the proportion of cpu cycles spent not idle over a given period.
extern crate cpu_monitor;
use std::io;
use std::time::Duration;
use cpu_monitor::CpuInstant;
fn main() -> Result<(), io::Error> {
let start = CpuInstant::now()?;
std::thread::sleep(Duration::from_millis(100));
let end = CpuInstant::now()?;
let duration = end - start;
println!("cpu: {:.0}%", duration.non_idle() * 100.);
Ok(())
}