| Crates.io | resource-meter |
| lib.rs | resource-meter |
| version | 0.2.0 |
| created_at | 2025-05-24 13:31:39.033931+00 |
| updated_at | 2025-05-24 13:31:39.033931+00 |
| description | A lightweight resource usage measurement library for Rust, providing scoped measurement of wall-clock time, user CPU time, and system CPU time. |
| homepage | https://github.com/enterprise-search/resource-meter |
| repository | https://github.com/enterprise-search/resource-meter |
| max_upload_size | |
| id | 1687420 |
| size | 12,881 |
A lightweight resource usage measurement library for Rust, providing scoped measurement of wall-clock time, user CPU time, and system CPU time.
libc::getrusage)use resource_meter::ResourceMeterStack;
use std::thread::sleep;
use std::time::Duration;
fn main() {
// Create a stack to manage resource measurement scopes
let mut stack = ResourceMeterStack::new();
// Start a measurement scope named "outer"
stack.push("outer");
sleep(Duration::from_millis(100));
// Start a nested measurement scope named "outer/inner"
stack.push("outer/inner");
sleep(Duration::from_millis(200));
stack.pop(); // End "outer/inner"
sleep(Duration::from_millis(50));
stack.pop(); // End "outer"
// Generate and print a hierarchical report
let report = stack.finish();
println!("{}", report);
}