2 releases
| 0.1.2 | Sep 26, 2023 |
|---|---|
| 0.1.1 | Sep 25, 2023 |
| 0.1.0 |
|
#11 in #monotonic
10,605 downloads per month
Used in completeio
33KB
556 lines
Temporal quantification that takes into account the time a system spent suspended.
Note: Some systems like FreeBSD, DragonFlyBSD, NetBSD, AIX, Fuchsia, Emscripten don't support CLOCK_BOOTIME.
For compatibility CLOCK_MONOTONIC is used as a fallback.
Windows QueryPerformanceCounter includes suspended time. So for Windows and
unsupported platforms std::time::Instant is just reexported.
Examples
Using Instant to calculate how long a function took to run:
use boot_time::Instant;
let now = Instant::now();
// Calling a slow function, it may take a while
slow_function();
let elapsed_time = now.elapsed();
println!("Running slow_function() took {} seconds.", elapsed_time.as_secs());
Boot time
This library reimplements std::time::Instant to use suspend-aware monotonic time if target system supports it.
Otherwise is uses monotonic time or reexports std::time::Instant.
Dependencies
~47KB