async-timer: Provides API for timer based execution of IO actions

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

This is a lightweight package built on top of the async package providing easy to use periodic timers. This can be used for executing IO actions periodically.


[Skip to Readme]

Properties

Versions 0.1.3.1, 0.1.4.0, 0.1.4.1, 0.2.0.0
Change log None available
Dependencies base (>=4.7 && <5), lifted-async (>=0.9.1.1 && <0.10), lifted-base (>=0.2.3.11 && <0.3), monad-control (>=1.0.1.0 && <1.1) [details]
License BSD-3-Clause
Copyright 2016, 2017 Moritz Schulte
Author Moritz Schulte
Maintainer mtesseract@silverratio.net
Category Concurrency
Home page https://github.com/mtesseract/async-timer
Source repo head: git clone https://github.com/mtesseract/async-timer
Uploaded by mtesseract at 2017-06-11T11:10:58Z

Modules

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for async-timer-0.1.3.1

[back to package description]

async-timer Hackage version Stackage version Build Status

About

This is a lightweight package built on top of the async package providing easy to use periodic timers. This can be used for executing IO actions periodically.

Example:

      let conf = defaultTimerConf & timerConfSetInitDelay  500 -- 500 ms
                                  & timerConfSetInterval  1000 -- 1 s
    
      withAsyncTimer conf $ \ timer -> do
        forM_ [1..10] $ \_ -> do
          timerWait timer
          putStrLn "Tick"