1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
name: stm-delay
version: 0.1.1.1
synopsis: Updatable one-shot timer polled with STM
description:
This library lets you create a one-shot timer, poll it using STM,
and update it to ring at a different time than initially specified.
.
It uses GHC event manager timeouts when available
(GHC 7.2+, @-threaded@, non-Windows OS), yielding performance similar
to @threadDelay@ and @registerDelay@. Otherwise, it falls back to
forked threads and @threadDelay@.
.
[0.1.1]
Add tryWaitDelayIO, improve performance for certain cases of @newDelay@
and @updateDelay@, and improve example.
homepage: https://github.com/joeyadams/haskell-stm-delay
license: BSD3
license-file: LICENSE
author: Joey Adams
maintainer: joeyadams3.14159@gmail.com
copyright: Copyright (c) Joseph Adams 2012
category: System
build-type: Simple
cabal-version: >= 1.8
source-repository head
type: git
location: git://github.com/joeyadams/haskell-stm-delay.git
library
exposed-modules:
Control.Concurrent.STM.Delay
ghc-options: -Wall -fwarn-tabs
build-depends: base >= 4.3 && < 5
, stm
-- Need base >= 4.3 for:
--
-- * Control.Exception.mask
--
-- * forkIOUnmasked
--
-- * A threadDelay that doesn't give (-1) magic treatment.
-- See http://hackage.haskell.org/trac/ghc/ticket/2892
--
-- * GHC.Event (called System.Event in base 4.3)
test-suite test
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
ghc-options: -Wall
-fno-warn-missing-signatures
-fno-warn-name-shadowing
-fno-warn-unused-do-bind
-fno-warn-unused-matches
build-depends: base >= 4.3 && < 5
, stm
, stm-delay
test-suite test-threaded
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
ghc-options: -Wall -threaded
-fno-warn-missing-signatures
-fno-warn-name-shadowing
-fno-warn-unused-do-bind
-fno-warn-unused-matches
build-depends: base >= 4.3 && < 5
, stm
, stm-delay
|