2 releases
0.1.2 | Sep 26, 2023 |
---|---|
0.1.1 | Sep 25, 2023 |
0.1.0 |
|
#379 in Operating systems
68 downloads per month
Used in completeio
33KB
556 lines
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
.
lib.rs
:
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());
Dependencies
~46KB