3 个稳定版本
1.2.0 | 2024年6月26日 |
---|---|
1.1.0 | 2022年12月26日 |
1.0.0 | 2022年3月20日 |
#12 in 性能分析
每月下载量 184,008
用于 67 个 crates (25 直接)
16KB
210 行
内存统计
Rust 的跨平台内存分析器,支持 Windows、Linux 和 MacOS。此 crate 提供两个指标
- "物理内存",对应于 Linux 和 MacOS 上的 Resident Set Size 以及 Windows 上的 Working Set。
- "虚拟内存",对应于 Linux 和 MacOS 上的 Virtual Size 以及 Windows 上的 Pagefile Usage。
使用方法
将 memory-stats
添加为 Cargo.toml
的依赖项
[dependencies]
memory-stats = "1.2.0"
可选特性
serde
:启用对 MemoryStats
结构的序列化和反序列化。
示例
以下是一个打印当前内存使用的示例
use memory_stats::memory_stats;
fn main() {
if let Some(usage) = memory_stats() {
println!("Current physical memory usage: {}", usage.physical_mem);
println!("Current virtual memory usage: {}", usage.virtual_mem);
} else {
println!("Couldn't get the current memory usage :(");
}
}
注意事项
在 Linux 上获取准确的内存使用情况相对昂贵,并且并不总是可能的。如果可用,此 crate 总是尝试使用来自 /proc/self/smaps
的统计数据。然而,由于 /proc/self/smaps
的支持可能没有在所有内核中编译,此 crate 还会使用来自 /proc/self/statm
的更快但不太准确的统计数据作为后备。
如果需要速度而牺牲精度,可以启用 always_use_statm
特性,以始终使用 /proc/self/statm
统计数据。
许可证
此 crate 可在以下任一许可证下使用
任选其一。
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交以包含在工作中的任何贡献,应双许可如上,无任何附加条款或条件。
依赖项
~0–8.5MB
~66K SLoC