time-out: Timers, timeouts, alarms, monadic wrappers

[ control, library, monad, public-domain, time, timeout ] [ Propose Tags ]

This library provides several timer and timeout related tools:

  • Control.Timeout - Execution of a computation with a time limit, aborting it if the limit is reached before the computation finishes. It is more-or-less a lifted version of System.Timeout from the base package. It's good for single use, but it launches a temporary helper thread. If you want to time-limit actions continuously (e.g. if you're implementing a network protocol), you should probably use one of the other tools described below, since they use a single dedicated thread for all the timeouts.

  • Control.Timer - Managing a timer running in a dedicated thread. The timer waits for an amount of time you specify, and then runs an action you specify. You can stop and restart it at any time.

  • Control.Alarm - Managing an alarm, which is a timer whose action is to notify your thread when the specified amount of time passes.

  • Control.Monad.Trans.Timer - A monad transformer for managing a timer

  • Control.Monad.Trans.Alarm - A monad transformer for managing an alarm

  • Control.Monad.Trans.Timeout - A monad transformer for running actions with timeouts, useful for e.g. network protocols where any send and receive can timeout

  • Control.Monad.Timeout.Class - A monad typeclass for running actions with a time limit. Control.Timeout provides a simple trivial for IO (which can then be used with any MonadIO), and Control.Monad.Trans.Timeout provides a scalable instance.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.2
Change log ChangeLog
Dependencies base (>=4.8 && <5), data-default-class (>=0.0.1), exceptions (>=, time-interval (>=0.1.1), time-units (>=1.0.0), transformers (>= [details]
License LicenseRef-PublicDomain
Copyright ♡ Copying is an act of love. Please copy, reuse and share.
Author fr33domlover
Maintainer fr33domlover@riseup.net
Category Control, Monad, Time, Timeout
Home page http://hub.darcs.net/fr33domlover/time-out
Bug tracker mailto:fr33domlover@riseup.net
Source repo head: darcs get http://hub.darcs.net/fr33domlover/time-out
Uploaded by akrasner at 2016-05-30T11:10:58Z
Distributions NixOS:0.2
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 4176 total (17 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-05-30 [all 1 reports]

Readme for time-out-0.2

[back to package description]

See the .cabal file for more info and link to project website the version control.

The official download location is Hackage:


This library is free software, and is committed to software freedom. It is released to the public domain using the CC0 Public Domain Dedication. For the boring "legal" details see the file 'COPYING'.

See the file 'INSTALL' for hints on installation. The file 'ChangeLog' explains how to see the history log of the changes done in the code. 'NEWS' provides a friendly overview of the changes for each release.