1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#[derive(Debug, Default, Clone)]
pub struct Cpu {
pub name: String,
pub user: u64,
pub nice: u64,
pub system: u64,
pub idle: u64,
pub iowait: u64,
pub irq: u64,
pub softirq: u64,
pub steal: u64,
pub guest: u64,
pub guest_nice: u64,
}
#[derive(Debug, Default, Clone)]
pub struct Stat {
pub cpu: Cpu,
pub cpus: Vec<Cpu>,
pub ctxt: u64,
#[cfg(feature = "has_stat_btime")]
pub btime: u32,
pub processes: u32,
#[cfg(feature = "has_stat_procs_running")]
pub procs_running: u32,
#[cfg(feature = "has_stat_procs_blocked")]
pub procs_blocked: u32,
}
impl Stat {
pub fn with_capacity(n: usize) -> Self {
Self {
cpus: Vec::with_capacity(n),
..Self::default()
}
}
}