async: Run IO operations asynchronously and wait for their results

[ bsd3, concurrency, library ] [ Propose Tags ]

This package provides a higher-level interface over threads, in which an Async a is a concurrent thread that will eventually deliver a value of type a. The package provides ways to create Async computations, wait for their results, and cancel them.

Using Async is safer than using threads in two ways:

  • When waiting for a thread to return a result, if the thread dies with an exception then the caller must either re-throw the exception (wait) or handle it (waitCatch); the exception cannot be ignored.

  • The API makes it possible to build a tree of threads that are automatically killed when their parent dies (see withAsync).

Changes in 2.0.1.1:

  • Safe Haskell support: Control.Concurrent.Async is now Trustworthy

Changes in 2.0.1.0:

  • Added a Functor instance for Async

  • Added asyncBound, asyncOn, asyncWithUnmask, asyncOnWithUnmask, withAsyncBound, withAsyncOn, withAsyncWithUnmask, withAsyncOnWithUnmask.

  • Added mapConcurrently

  • Added Concurrently (with Applicative and Alternative instances)

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.0, 1.1, 1.2, 1.3, 1.4, 2.0.0.0, 2.0.1.0, 2.0.1.1, 2.0.1.2, 2.0.1.3, 2.0.1.4, 2.0.1.5, 2.0.1.6, 2.0.2, 2.1.0, 2.1.1, 2.1.1.1, 2.2.1, 2.2.2, 2.2.3, 2.2.4
Dependencies base (>=4.3 && <4.6), stm (>=2.2 && <2.4) [details]
License BSD-3-Clause
Copyright (c) Simon Marlow 2012
Author Simon Marlow
Maintainer Simon Marlow <marlowsd@gmail.com>
Category Concurrency
Home page https://github.com/simonmar/async
Bug tracker https://github.com/simonmar/async/issues
Source repo head: git clone https://github.com/simonmar/async.git
Uploaded by SimonMarlow at 2012-07-13T12:47:03Z
Distributions Arch:2.2.4, Debian:2.2.2, Fedora:2.2.4, FreeBSD:2.0.2, LTSHaskell:2.2.4, NixOS:2.2.4, Stackage:2.2.4, openSUSE:2.2.4
Downloads 284776 total (314 in the last 30 days)
Rating 2.75 (votes: 7) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]