base- Core data structures and operations
Copyright(c) Tamar Christina 2018
LicenseBSD-style (see the file libraries/base/LICENSE)
Safe HaskellNone



Common Timer definitions shared between WinIO and RIO.

The API of this module is unstable and not meant to be consumed by the general public. If you absolutely must depend on it, make sure to use a tight upper bound, e.g., base < 4.X rather than base < 5, because the interface can change rapidly without much warning.



type TimeoutQueue = PSQ TimeoutCallback Source #

A priority search queue, with timeouts as priorities.

type TimeoutCallback = IO () Source #

Warning: since the TimeoutCallback is called from the I/O manager, it must not throw an exception or block for a long period of time. In particular, be wary of throwTo and killThread: if the target thread is making a foreign call, these functions will block until the call completes.

type TimeoutEdit = TimeoutQueue -> TimeoutQueue Source #

An edit to apply to a TimeoutQueue.

newtype TimeoutKey Source #

A timeout registration cookie.


TK Unique