simple-stopwatch

Crates.iosimple-stopwatch
lib.rssimple-stopwatch
version0.1.4
sourcesrc
created_at2018-01-21 22:03:31.273959
updated_at2018-01-21 23:22:35.190682
descriptionMinimal stopwatch for rust, returns float values
homepagehttps://github.com/huwb/rust-simple-stopwatch
repositoryhttps://github.com/huwb/rust-simple-stopwatch
max_upload_size
id47706
size6,149
Huw Bowles (huwb)

documentation

https://docs.rs/simple-stopwatch/

README

rust-simple-stopwatch

Build Status

What is it?

A minimal no-thrills stopwatch. Returns time values as floats. Uses time::precise_time_ns under the hood.

Setup

Add the dependency simple-stopwatch to your Cargo.toml file, for example:

[dependencies]
simple-stopwatch="0.1.4"

Then import the stopwatch anywhere you would like to use it:

extern crate simple_stopwatch;
use simple_stopwatch::Stopwatch;

Example Use

There is minimal state in simple-stopwatch. Upon creation it grabs a timestamp, from which point its member functions will return elapsed time.

fn my_function() {
  let sw = Stopwatch::start_new();
  
  do_some_heavy_work();
  
  let elapsed_ms = sw.ms();
  println!("Time taken: {}ms", elapsed_ms);
}

The restart method updates the stored timestamp to the current time.

The code make use of a small amount of code from the time crate, which uses a system call to obtain a high precision time stamp. The overhead of this call appears to be very small from my experiments so far.

Inspiration / Other Projects

Commit count: 21

cargo fmt