blob: f3edf135659d319f6ba1aeef5003d249e53b4a47 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
/*
* Written by Dawid Kurzyniec and released to the public domain, as explained
* at http://creativecommons.org/licenses/publicdomain
*/
package scala.actors.threadpool.helpers;
/**
* Interface to specify custom implementation of precise timer.
*
* @author Dawid Kurzyniec
* @version 1.0
*/
public interface NanoTimer {
/**
* Returns the current value of the most precise available system timer,
* in nanoseconds. This method can only be used to measure elapsed time and
* is not related to any other notion of system or wall-clock time. The
* value returned represents nanoseconds since some fixed but arbitrary
* time (perhaps in the future, so values may be negative). This method
* provides nanosecond precision, but not necessarily nanosecond accuracy.
* No guarantees are made about how frequently values change. Differences
* in successive calls that span greater than approximately 292 years
* (263 nanoseconds) will not accurately compute elapsed time due to
* numerical overflow.
*
* @return The current value of the system timer, in nanoseconds.
*/
long nanoTime();
}
|