base-4.18.1.0: Basic libraries

Copyright | (c) Tamar Christina 2018
License | BSD-style (see the file libraries/base/LICENSE)
Maintainer | libraries@haskell.org
Stability | stable
Portability | non-portable
Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.Event.TimeOut

Description

Common Timer definitions shared between WinIO and RIO.

Synopsis

- type TimeoutQueue = PSQ TimeoutCallback
- type TimeoutCallback = IO ()
- type TimeoutEdit = TimeoutQueue -> TimeoutQueue
- newtype TimeoutKey = TK Unique

# Documentation

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.

Constructors

TK Unique |

#### Instances

Instances details

Eq TimeoutKey Source # |
Instance details Defined in GHC.Event.TimeOut Methods (==) :: TimeoutKey -> TimeoutKey -> Bool Source # (/=) :: TimeoutKey -> TimeoutKey -> Bool Source #
Ord TimeoutKey Source # |

Instance details

Defined in GHC.Event.TimeOut

Methods

compare :: TimeoutKey -> TimeoutKey -> Ordering Source #

(<) :: TimeoutKey -> TimeoutKey -> Bool Source #

(<=) :: TimeoutKey -> TimeoutKey -> Bool Source #

(>) :: TimeoutKey -> TimeoutKey -> Bool Source #

(>=) :: TimeoutKey -> TimeoutKey -> Bool Source #

max :: TimeoutKey -> TimeoutKey -> TimeoutKey Source #

min :: TimeoutKey -> TimeoutKey -> TimeoutKey Source #