pub struct SystemSnapshot {Show 16 fields
pub at: Instant,
pub cpu: Vec<CpuTimes>,
pub cpu_delta: Vec<CpuTimes>,
pub mem: MemInfo,
pub swap: SwapInfo,
pub load: [f64; 3],
pub uptime: u64,
pub clk_tck: u64,
pub page_size: u64,
pub net: NetCounters,
pub net_rate: Rate,
pub disk: DiskCounters,
pub disk_rate: Rate,
pub tasks: TaskStats,
pub psi: Option<Psi>,
pub zram: ZramInfo,
}Expand description
One immutable sample handed from the sampler thread to the renderer.
Fields§
§at: Instant§cpu: Vec<CpuTimes>Index 0 is the aggregate; indices 1..=n are per-core.
cpu_delta: Vec<CpuTimes>Same shape as cpu, holding the delta against the previous sample.
mem: MemInfo§swap: SwapInfo§load: [f64; 3]§uptime: u64§clk_tck: u64§page_size: u64§net: NetCountersCumulative host network counters, loopback excluded.
net_rate: RateThroughput against the previous sample. Zero on the first sample.
disk: DiskCountersCumulative host disk counters.
disk_rate: RateThroughput against the previous sample. Zero on the first sample.
tasks: TaskStatsFilled in by the sampler once the process table has been read.
psi: Option<Psi>Pressure stall information. None where the kernel does not provide it
(macOS, or a Linux kernel older than 4.20).
zram: ZramInfoCompressed RAM block devices. Empty when the machine has none.
Implementations§
Trait Implementations§
Source§impl Clone for SystemSnapshot
impl Clone for SystemSnapshot
Source§impl Debug for SystemSnapshot
impl Debug for SystemSnapshot
Auto Trait Implementations§
impl Freeze for SystemSnapshot
impl RefUnwindSafe for SystemSnapshot
impl Send for SystemSnapshot
impl Sync for SystemSnapshot
impl Unpin for SystemSnapshot
impl UnsafeUnpin for SystemSnapshot
impl UnwindSafe for SystemSnapshot
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more