clock : HasIO io => io ClockT Returns an approximation of processor time used by the program.
Type `ClockT` measures time with a granularity of
`CLOCKS_PER_SEC`.
Totality: total
Visibility: exportsetTimer : Has Errno es => EIO1 f => Which -> Timerval -> f es () This sets `new` as the new timer and places the current timer for
`Which` in `old`.
Depending on `Which`, the timer will use a different clock and
will (possibly repeatedly) raise a different kind signal:
* ITIMER_REAL: Counts down in real (i.e. wall clock) time
and raises SIGALRM
* ITIMER_VIRTUAL: Counts down in process virtual time
(i.e. user-mode CPU time) and raises SIGVTALRM
* ITIMER_PROF: Counts down in process time
(i.e. the sum of kernel-mode and user-mode CPU time) and raises SIGPROF
Totality: total
Visibility: exportgetTimer : Has Errno es => EIO1 f => Which -> f es Timerval Returns the currently set timer for `Which`.
Totality: total
Visibility: exportalarm : HasIO io => UInt -> io UInt A very basic version of `setitimer` that raises `SIGALRM`
after the given number of seconds.
The returned value is the remaining number of seconds on any
previously set timer. The timer can be disabled by setting
this to zero.
Totality: total
Visibility: exportgetTime : Has Errno es => EIO1 f => (c : ClockId) -> f es (IClock c) Returns the current time for the given clock.
Totality: total
Visibility: exportgetResolution : Has Errno es => EIO1 f => (c : ClockId) -> f es (IClock c) Returns the resolution for the given clock.
Totality: total
Visibility: exportnanosleep : Has Errno es => EIO1 f => Clock Monotonic -> f es () Like `nanosleep` but without the capability of keeping track of the
remaining duration in case of a signal interrupt.
Totality: total
Visibility: export