auto-update: Efficiently run periodic, on-demand actions

[ control, library, mit ] [ Propose Tags ]
Versions,,,,,,, 0.1.2,,, 0.1.3,, 0.1.4
Change log
Dependencies base (==4.*) [details]
License MIT
Author Michael Snoyman
Category Control
Home page
Uploaded by MichaelSnoyman at Mon May 9 05:43:47 UTC 2016
Distributions Arch:0.1.4, Debian:0.1.3, Fedora:0.1.4, FreeBSD:, LTSHaskell:0.1.4, NixOS:0.1.4, Stackage:0.1.4, openSUSE:0.1.4
Downloads 64260 total (194 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

API docs and the README are available at

[Skip to Readme]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for auto-update-0.1.4

[back to package description]


A common problem is the desire to have an action run at a scheduled interval, but only if it is needed. For example, instead of having every web request result in a new getCurrentTime call, we'd like to have a single worker thread run every second, updating an IORef. However, if the request frequency is less than once per second, this is a pessimization, and worse, kills idle GC.

This library allows you to define actions which will either be performed by a dedicated thread or, in times of low volume, will be executed by the calling thread.

For original use case, see yesod-scaffold issue #15.