@hackage si-timers1.5.0.0

timers using SI units (seconds)

SI Timers

The si-timers package provides delays & timeouts which are safe on 32-bit systems; cancellable timeouts (see registerDelayCancellable); a refined interface for monotonic Time. Time is given with left monoid action of DiffTime (which encodes the notion of time differences). The MonadMonotonicTime, MonadDelay type classes & MonadTimers (type synonym) API provide a consistent interface for working with delays and timeouts.

si-timers package also defined a low level MonadTimout type class. On system with a native timer manager (e.g. Linux, MacOS, FreeBSD), it's very efficient but for other platforms (e.g. Windows), it might not be the right API for low latency timeouts needed for example for low level networking code, because it relies on GHC's RTS thread scheduling.

si-timers are compatible with io-sim.

The SI comes from the International System of Units.