#resources #tracker #monitor #usage #background-thread #lapse

systrack

在自定义的周期内跟踪系统资源使用情况

1 个不稳定版本

0.1.0 2023年10月7日

#17#usage

MIT/Apache

14KB
217 代码行数(不包括注释)

systrack

在自定义的周期内跟踪系统资源使用情况。

使用示例

创建一个记录CPU使用情况的跟踪器。

let mut cpu_tracker = SystemTracker::new_cpu_tracker();

这创建了一个结构,用于跟踪过去一分钟内的CPU使用情况(默认值)。内部,一个后台线程每两秒更新一次历史信息。

如果您想要一个跟踪器保存更长时间的历史数据,您应该使用 new_cpu_tracker_with_capacity() 创建跟踪器。

要获取历史数据,您可以调用 fetch_usage()

for _ in 0..10 {
  println!("{:?}", cpu_tracker.fetch_usage());
  thread::sleep(Duration::from_millis(500));
}

此外,如果您想要跟踪器停止记录,您可以调用 stop()

cpu_tracker.stop();
for _ in 0..5 {
  println!("{:?}", cpu_tracker.fetch_usage());
  thread::sleep(Duration::from_millis(500));
}

请注意,一旦调用 stop() 方法,fetch_usage() 方法将始终返回 None

内存使用跟踪器的工作方式几乎相同。请参阅示例目录以获取更多信息。

依赖关系

~0.7–1MB
~20K 额外代码行数