StopWatch.setTimeElapsed

Sets the total time which the StopWatch has been running (i.e. what peek returns).

The StopWatch does not have to be stopped for setTimeElapsed to be called, nor will calling it cause the StopWatch to stop.

struct StopWatch
@safe nothrow @nogc
void
setTimeElapsed
(
Duration timeElapsed
)

Examples

import core.thread : Thread;

StopWatch sw;
sw.setTimeElapsed(hours(1));

// As discussed in MonoTime's documentation, converting between
// Duration and ticks is not exact, though it will be close.
// How exact it is depends on the frequency/resolution of the
// system's monotonic clock.
assert(abs(sw.peek() - hours(1)) < usecs(1));

sw.start();
Thread.sleep(usecs(1));
assert(sw.peek() > hours(1) + usecs(1));

Meta