#stopwatch #timer #timekeeper

simple-stopwatch

Minimal stopwatch for rust, returns float values

5 releases

Uses old Rust 2015

0.1.4 Jan 21, 2018
0.1.3 Jan 21, 2018
0.1.2 Jan 21, 2018
0.1.1 Jan 21, 2018
0.1.0 Jan 21, 2018

#26 in #stopwatch

Download history 71/week @ 2024-07-27 103/week @ 2024-08-03 54/week @ 2024-08-10 21/week @ 2024-08-17 73/week @ 2024-08-24 33/week @ 2024-08-31 45/week @ 2024-09-07 34/week @ 2024-09-14 47/week @ 2024-09-21 74/week @ 2024-09-28 35/week @ 2024-10-05 50/week @ 2024-10-12 176/week @ 2024-10-19 92/week @ 2024-10-26 175/week @ 2024-11-02 206/week @ 2024-11-09

650 downloads per month

MIT license

6KB

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

Dependencies

~0.6–1MB
~15K SLoC