zx_ticks_get

Summary

Read the number of high-precision timer ticks since boot, not including time spent suspended.

Declaration

#include <zircon/syscalls.h>

zx_instant_mono_ticks_t zx_ticks_get(void);

Description

zx_ticks_get() returns the number of high-precision timer ticks since boot, not including time spent suspended.

These ticks may be processor cycles, high speed timer, profiling timer, etc. They are not guaranteed to continue advancing when the system is asleep.

Rights

TODO(https://fxbug.dev/42107318)

Return value

zx_ticks_get() returns the number of high-precision timer ticks since boot.

Errors

zx_ticks_get() does not report any error conditions.

Notes

The returned value may be highly variable. Factors that can affect it include:

  • System sleep/wake (post implementation of RFC-0230)
  • Reset of the processor cycle counter
  • Reordering of instructions (if required, use a memory barrier)

All Fuchsia systems use an invariant-rate ticks clock, which means that the number of ticks per second is constant regardless of changes in processor speed or migration between processors.

See also

ticks_per_second