Copyright | (c) Tamar Christina 2018 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | libraries@haskell.org |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
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.
TK Unique |
Instances
Eq TimeoutKey Source # | |
Defined in GHC.Event.TimeOut (==) :: TimeoutKey -> TimeoutKey -> Bool Source # (/=) :: TimeoutKey -> TimeoutKey -> Bool Source # | |
Ord TimeoutKey Source # | |
Defined in GHC.Event.TimeOut 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 # |