Crates.io | exec_duration |
lib.rs | exec_duration |
version | 0.1.1 |
source | src |
created_at | 2021-06-30 22:46:45.789489 |
updated_at | 2021-06-30 22:46:45.789489 |
description | Stupid and easy to use Rust code instrumentalization library |
homepage | https://github.com/adlane/exec_duration |
repository | https://github.com/adlane/exec_duration |
max_upload_size | |
id | 417149 |
size | 37,816 |
Get execution duration of a function or a bloc of code
Stupid and easy to use Rust code instrumentalization library.
This module provides a simple API to measure the execution duration of a function or a block code.
[dependencies]
exec_duration = "0.1.1"
use exec_duration::ExecProbe;
fn function_1() {
// Create a new execution probe object
// exec duration will be computed from this point
let mut ep = ExecProbe::new("function_1");
// some code
// add a new point
ep.add_point("part 1");
// some code
// add a new point
ep.add_point("part 2");
// some code
// add a new point
ep.add_point("part 3");
}
fn function_2() {
// Create a new execution probe object
// exec duration will be computed from this point
let mut ep = ExecProbe::new("function_2");
// some code
// add a new point
ep.add_point("part 1");
// some code
// add a new point
ep.add_point("part 2");
// some code
// optionally call the stop function
ep.stop();
}
fn main() {
function_1();
function_2();
// fetch results
if let Ok(list) = exec_duration::fetch_results() {
for r in list.iter() {
println!("{}", r);
}
}
}