Method gethrvtime()
- Method
gethrvtime
int
gethrvtime(void
|int
nsec
)- Description
Return the CPU time that has been consumed by this process or thread. -1 is returned if the system couldn't determine it. The time is normally returned in microseconds, but if the optional argument
nsec
is nonzero it's returned in nanoseconds.The CPU time includes both user and system time, i.e. it's approximately the same thing you would get by adding together the "utime" and "stime" fields returned by System.getrusage (but perhaps with better accuracy).
It's however system dependent whether or not it's the time consumed in all threads or in the current one only; System.CPU_TIME_IS_THREAD_LOCAL tells which. If both types are available then thread local time is preferred.
- Note
The actual accuracy on many systems is significantly less than microseconds or nanoseconds. See System.CPU_TIME_RESOLUTION.
- Note
The garbage collector might run automatically at any time. The time it takes is not included in the figure returned by this function, so that normal measurements aren't randomly clobbered by it. Explicit calls to gc are still included, though.
- Note
The special function
gauge
is implemented with this function.- See also
System.CPU_TIME_IS_THREAD_LOCAL, System.CPU_TIME_RESOLUTION,
gauge()
, System.getrusage(), gethrtime()