Queries the system monotonic time, if available.
On POSIX systems with clock_gettime() and CLOCK_MONOTONIC this call
is a very shallow wrapper for that. Otherwise, we make a best effort
that probably involves returning the wall clock time (with at least
microsecond accuracy, subject to the limitations of the OS kernel).
It's important to note that POSIX CLOCK_MONOTONIC does
not count time spent while the machine is suspended.
On Windows, "limitations of the OS kernel" is a rather substantial
statement. Depending on the configuration of the system, the wall
clock time is updated as infrequently as 64 times a second (which
is approximately every 16ms). Also, on XP (but not on Vista or later)
the monotonic clock is locally monotonic, but may differ in exact
value between processes due to timer wrap handling.
Since 2.28
Queries the system monotonic time, if available. On POSIX systems with clock_gettime() and CLOCK_MONOTONIC this call is a very shallow wrapper for that. Otherwise, we make a best effort that probably involves returning the wall clock time (with at least microsecond accuracy, subject to the limitations of the OS kernel). It's important to note that POSIX CLOCK_MONOTONIC does not count time spent while the machine is suspended. On Windows, "limitations of the OS kernel" is a rather substantial statement. Depending on the configuration of the system, the wall clock time is updated as infrequently as 64 times a second (which is approximately every 16ms). Also, on XP (but not on Vista or later) the monotonic clock is locally monotonic, but may differ in exact value between processes due to timer wrap handling. Since 2.28